交流群:462197261站长百科站长论坛热门标签收藏本站北冥有鱼 互联网前沿资源第一站 助力全行业互联网+
点击这里给我发消息
  • 当前位置:
  • Unity3D如何获取时间戳或北京时间

    北冥有鱼 教程大全 2020-05-22 ,,

    本文实例为大家分享了Unity3D获取时间戳或北京时间的具体代码,供大家参考,具体内容如下

    单机游戏因为没有服务器下发时间戳所以要自己获取,当然也可以用现成的时间API来获取。

    如果获取本地时间,会导致玩家随意修改日期来达到数据更改,如每日奖品、每日奖励等等。

    单机游戏本来就不要网络的,可是获取时间需要网络,这有点矛盾,有没有谁有更好的解决方案呢?

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Net;
    using System.Text;
    using System.Text.RegularExpressions;
     
    namespace ConsoleApplication1
    {
     
      class Program
      {
        static void Main(string[] args)
        {
          Console.WriteLine( GetBeiJingTime());
          Console.ReadKey();
        }
     
        public static string GetBeiJingTime()
        {
          bool isget = false;
          string result = string.Empty;
          try
          {
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://open.baidu.com/special/time/");//百度北京时间地址
            req.Headers.Add("content", "text/html; charset=gbk");
            HttpWebResponse res = (HttpWebResponse)req.GetResponse();
            Stream stream = res.GetResponseStream();
            StreamReader sr = new StreamReader(stream, Encoding.GetEncoding("gbk"));
            string html = sr.ReadToEnd();
            Func<string,string> f1 = (p) =>{
              Regex reg = new Regex("(?<=baidu_time\\().*?(?=\\))");
              return reg.Matches(p)[0].Value;};
            string time = f1(html).Substring(0, 10);//这里是时间戳
            stream.Dispose();
            sr.Dispose();
            DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
            long lTime = long.Parse(time + "0000000");
            TimeSpan toNow = new TimeSpan(lTime);
            result = dtStart.Add(toNow).ToString("yyyyMMdd");
            isget = true;
          }
          catch (Exception)
          {
          }
          finally
          {
            if (!isget)result = "19700101";//如果没有网络就返回默认
          }
          return result;
        }
      }
     
    }

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持北冥有鱼。


    广而告之:
    热门推荐:
    javascript 调用其他页面的js函数或变量的脚本

    调用函数、变量的方法一样,都是需要首先获得你需要调用的函数所在的window对象,然后通过window.method()或者 window.variable 来调用。  下面的示例演示了一个弹出窗口如何调用起父窗口中的方法和变量。  父窗口:1.html   北冥有鱼 www···

    修复bash漏洞的shell脚本分享

    在网上搜资料找到一个大神写的shell修复bash漏洞脚本,觉得很不错,拖到我blog里来共享给大家. 脚本内容: 复制代码 代码如下: #/bin/bash #Author Alex Fang. Updates may apply soon. clear echo "Press anykey to continue..." $anykey ; read anykey echo "BBBBBBBBBBBAAAAA···

    在图片上显示左右箭头类似翻页的代码

    使用JS实现在图片上显示左右箭头的翻页代码,预览效果网址:http://www.keleyi.com/keleyi/phtml/picnext/ 本实例使用了javascript的onmousemove 事件。onmousemove 事件会在鼠标指针移动时发生。 语法 onmousemove="SomeJavaScriptCode" SomeJavaScriptCode是必需参数···

    通过隐藏option实现select的联动效果

    复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Untitled Page</title> ···

    Windows 10 与 MySQL 5.5 安装使用及免安装使用详细教程(图文)

    本文介绍Windows 10环境下, MySQL 5.5的安装使用及免安装使用 资源下载: MySQL安装文件:http://download.csdn.net/detail/lf19820717/9892711 MySQL免安装文件:http://download.csdn.net/detail/lf19820717/9892716 -----------------------------------------------------···

    用php+ajax新建流程(请假、进货、出货等)

     对管理者来说,电脑操作的请假流程要比人工请假流程的效率高出很多,那么如何新建这个流程呢? 首先:需要明确需要操作哪些流程? 其次:每一个流程需要那些人员来执行? 最后:执行该流程人员的顺序是什么?  第一步:需要三张表,分别是:user表;liucheng表;liu···

    jQuery使用$.ajax提交表单完整实例

    本文实例讲述了jQuery使用$.ajax提交表单的方法。分享给大家供大家参考,具体如下: 首先,新建Login.html页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http:/···

    webpack中使用iconfont字体图标的方法

    入坑webpack,开始加载一些图片、js文件什么的都没有报错,今天正好下了iconfont字体,就出现了错误,所以这里分享一下怎么在webpack中使用iconfont。 1、修改css中字体文件路径 我把css和字体文件放在同级目录下 打开iconfont.css文件,原本的字体文件引用路径是用的css的方···

    微信小程序实战之仿android fragment可滑动底部导航栏(4)

    底部3-5个选项的底部导航栏,目前在移动端上是主流布局之一,因此腾讯官方特地做了,可以通过设置,就可以做出了一个底部的导航栏。 相关教程:微信小程序教程系列之设置标题栏和导航栏(7) 但是通过设置的这个底部的导航栏,功能上比较固定,它必须要设置与它对应的一个页面···

    解析原来浏览器原生支持JS Base64编码解码

    上次给大家分享了如何用js实现剪切板粘贴上传图片,今天跟大家分享下JS Base64编码解码。 1. 基础不牢,选型糟糕 糟糕的技术选型往往源自自身技术广度不足。就在数月前,一个前端HTML字符信息转Base64的需求,我是毫不犹豫去找了个开源的base64.js。使用很简单,浏览器引入该JS···