在工作过程中遇到时间格式的数据在C#、js 和 json保存的不同结果,现在总结一下

JavaScript Parser:

1、数字型时间转字符串时间

如var data = "/Date(1387533960820)/";

result = StrDateTo(result);

Console.Write(result);

输出:2013-12-20 09:21

code:

var data = "/Date(1387533960820)/";

var result = IntDateTo(data);

function IntDateTo(data) {

var date = new Date(parseInt(data.replace("/Date(", "").replace(")/", ""), 10));

var result = date.getFullYear() + "-" + (date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1) + "-" + (date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) + " " + (date.getHours() < 10 ? "0" + date.getHours() : date.getHours()) + ":" + (date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes());

return result;
}

var obj = eval('(' + '{Date:"2010-07-12T03:05:21Z"}' + ')');
alert(obj);
scanDate(obj, isoDateParser);
var dateValue = obj["Date"];
alert(dateValue);
function scanDate(obj, dateParser) {
for (var key in obj) {
obj[key] = dateParser(key, obj[key]);
if (typeof (obj[key]) === 'object') {
scanDate(obj[key], dateParser);
}
}
}
function isoDateParser(key, value) {
if (typeof value === 'string') {
var a = (/ ^ \ d {4} - \ d { 2} - \e{2} \e{2}:\e{2}:\e{2} $ /).exec(value);
var a = (/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)?$/).exec(value);
if (a) {
var utcMilliseconds = Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4], +a[5], +a[6]);
return new Date(utcMilliseconds);
}
}
return value;
}

C# Parser:

long time = MilliTimeStamp(DateTime.Now);

DateTime Time = ConvertTime(time);

console.write(time )

结果为:1387547586984

console.write(Time)

结果为一个DateTime时间对象:{2013-12-20 13:53:06}

public long MilliTimeStamp(DateTime TheDate)
{//转为数字型时间
DateTime d1 = new DateTime(1970, 1, 1).ToUniversalTime();
DateTime d2 = TheDate.ToUniversalTime();

TimeSpan ts = new TimeSpan(d2.Ticks - d1.Ticks);
return (long)ts.TotalMilliseconds;
}

public DateTime ConvertTime(long milliTime)
{//转为时间对象
long timeTricks = new DateTime(1970, 1, 1).Ticks + milliTime * 10000;
return new DateTime(timeTricks);

}

资料来源于博客园

1、http://www.cnblogs.com/dragonstreak_1/archive/2011/09/04/2165942.html

C#、js、json Datetime格式总结的更多相关文章

  1. ASP.NET Core 返回 Json DateTime 格式

    ASP.NET Core 返回 Json 格式的时候,如果返回数据中有DateTime类型,如何自定义其格式呢?配置如下: services.AddMvc().AddJsonOptions(opt = ...

  2. js json日期格式转换日期方法

      接收json数据,日期格式为:"\/Date(1414078309687)\/" var value = "/Date(1414078309687)/"; ...

  3. JS jQuery json日期格式问题的办法

    原生JS:Date对象详细参考 Date对象:基于1970年1月1日(世界标准时间)起的毫秒数 本文参考MDN做的详细整理,方便大家参考MDN 构造函数: new Date(); 依据系统设置的当前时 ...

  4. JS对象与json字符串格式

    <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...

  5. 字定义JSON序列化支持datetime格式序列化

    字定义JSON序列化支持datetime格式序列化 由于json.dumps无法处理datetime日期,所以可以通过自定义处理器来做扩展,如: import json from datetime i ...

  6. java js ur特殊格式处理 json 特殊格式处理

    url特殊格式处理: js中使用 encodeURIComponent() 编码对应的value $.ajax({ type: "post", url: "/tb_are ...

  7. SpringMVC 设置全局DateTime json返回格式

    对于部分返回DateTime的项目,只需要在指定属性上添加@JsonSerialize 使用自定义的json转换格式即可自定义返回DateTime格式 但是对于项目中返回有多个DateTime字段来说 ...

  8. 4种解决json日期格式问题的办法

    4种解决json日期格式问题的办法   开发中有时候需要从服务器端返回json格式的数据,在后台代码中如果有DateTime类型的数据使用系统自带的工具类序列化后将得到一个很长的数字表示日期数据,如下 ...

  9. JavaScriptSerializer 序列化json 时间格式

    利用JavaScriptSerializer 序列化json 时间格式,得到的DateTime值值显示为“/Date(700000+0500)/”形式的JSON字符串,显然要进行转换 1.利用字符串直 ...

随机推荐

  1. POJ 3087 Shuffle'm Up

    Shuffle'm Up Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit ...

  2. [转载]GlassFish 的安装及设置命令

    移步: http://blog.csdn.net/joyous/article/details/8008870

  3. D. Game with Strings

    http://codeforces.com/contest/355/problem/D 这道题问了一下学妹,难道说哥已经老了!!! 首先题意理解上有些问题 比如说 a   b    c b   d   ...

  4. 深入replace

    replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. stringObject.replace(reg/str,str/replacement); 这里主 ...

  5. Android中的slidingmenu

    简介 SlidingMenu作为滑动侧边栏主要用来代替Android传统的Menu菜单. 导入方法 SlidingMEnu以前依赖于另一个开源库ActionBarSherlock,但是现在被AppCo ...

  6. JAVA时间格式转换大全

    import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @return 返回时间类型 ...

  7. selenium问题记录

    错误一: 错误信息:Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output: 原 ...

  8. Android 查缺补漏之Adapter 和 LayoutInflater

    在之前的博客我也讲过 Adapter 和 inflater,但发现讲的不够清楚,好多读者看后有疑问,今天就结合API单独讲一次. Adapter : An Adapter object acts as ...

  9. Intent之前的对象传递与fragment传递数据

    Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象. 要求被传递的对象必须实现上述2种接口中的一种 ...

  10. Outlook不能预览和打开Excel文件:

    无法打开Outlook邮箱中的Excel附件,确实让人恼火 先不要着急: 1.在开始->运行,输入"regedit" 2.找到路径:HKEY_CURRENT_USER\Sof ...