static void Main(string[] args)
{
string [] jsonDates = {"/Date(1242357713797+0800)/" , "/Date(1242357722890+0800)/"};
foreach (string jsonDate in jsonDates)
{
Console.WriteLine("Json : {0}", jsonDate);
DateTime dtResult = JsonToDateTime(jsonDate);
Console.WriteLine("DateTime: {0}", dtResult.ToString("yyyy-MM-dd hh:mm:ss ffffff"));
}
Console.Read();
}
public static DateTime JsonToDateTime(string jsonDate)
{
string value = jsonDate.Substring(6, jsonDate.Length - 8);
DateTimeKind kind = DateTimeKind.Utc;
int index = value.IndexOf('+', 1);
if (index == -1)
index = value.IndexOf('-', 1);
if (index != -1)
{
kind = DateTimeKind.Local;
value = value.Substring(0, index);
}
long javaScriptTicks = long.Parse(value, System.Globalization.NumberStyles.Integer, System.Globalization.CultureInfo.InvariantCulture);
long InitialJavaScriptDateTicks = (new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).Ticks;
DateTime utcDateTime = new DateTime((javaScriptTicks * 10000) + InitialJavaScriptDateTicks, DateTimeKind.Utc);
DateTime dateTime;
switch (kind)
{
case DateTimeKind.Unspecified:
dateTime = DateTime.SpecifyKind(utcDateTime.ToLocalTime(), DateTimeKind.Unspecified);
break;
case DateTimeKind.Local:
dateTime = utcDateTime.ToLocalTime();
break;
default:
dateTime = utcDateTime;
break;
}
return dateTime ;
}
分享到:
相关推荐
4. **日期和时间处理**:JSON.NET提供了对日期和时间的友好处理,可以将DateTime对象转换为ISO 8601格式或其他自定义格式。 5. **性能优化**:JSON.NET以其高性能著称,10.0.3版本可能会进一步提升解析速度和内存...
3. **类型映射**:库自动处理.NET类型与JSON类型的映射,如DateTime到ISO 8601日期时间格式的转换。 4. **自定义序列化**:允许开发者通过实现特定接口来自定义对象的序列化行为。 5. **性能优化**:作为轻量级库...
Newtonsoft.Json,通常被称为json.net,是C#编程中广泛使用的JSON序列化和反序列化库。这个库由James Newton-King 创建,它提供了一套全面且高性能的API,用于处理JSON数据,使得在.NET框架中操作JSON变得极其简单。...
总之,通过自定义`JsonResult`并利用Json.NET库的特性,我们可以轻松地控制DateTime类型的日期格式,从而解决Asp.NET MVC中返回JsonResult时日期格式不友好的问题。这种方法既保持了服务器与客户端的解耦,又提高了...
此外,Json.NET还支持自定义序列化行为,例如忽略特定属性、自定义日期格式等,这为开发者提供了高度的灵活性。例如,你可以使用 `[JsonIgnore]` 特性忽略某个属性,或使用 `[JsonConverter]` 指定自定义的转换器。 ...
Asp.Net服务器端借用Newtonsoft.Json.dll进行直接把对象转换成成Json格式的字符串,或把Json字符串转换成类对象。该dll原本针对JavaScript进行的转换,对其中部分类作出了修改,并重新命名为AndroidConvert类。 注...
在***中处理JSON的序列化和反序列化是Web开发中常见的...对于日期时间类型的处理,需要特别注意JSON与.NET类型之间的转换,确保数据能够准确无误地传输。掌握这些技术点对于开发一个高效且功能完善的Web应用至关重要。
6. **ASP.NET MVC Razor 视图中的日期格式化** 在Razor视图中,可以直接使用HTML辅助方法来格式化日期,例如 `@Html.DisplayFor(modelItem => item.Date, "dd/MM/yyyy")`。 7. **JSON序列化日期** 当处理JSON数据...
在C#中,我们主要依靠`System.Text.Json`或`Newtonsoft.Json`库(也称为Json.NET)来实现字符串与JSON对象之间的转换。本篇文章将详细探讨如何使用这两种方法进行转换。 首先,让我们关注`System.Text.Json`,这是...
本文实例讲述了JS实现将Asp.Net的DateTime Json类型转换为标准时间的方法。分享给大家供大家参考,具体如下: 直接上例子,如下所示: onload = function () { var thisDateText = '/Date(1401076829)/'; ...
在使用ASP.NET MVC 在写项目的时候发现,返回给前端的JSON数据,日期类型是 Date(121454578784541) 的格式,需要前端来转换一下才能用来使用。 C#对象属性名称转换成JSON自动转成“驼峰命名法” 问题 在C#中推荐的...
在Unity3D开发中,JSON(JavaScript Object Notation)是...这种方法虽然简单有效,但在处理复杂数据结构时可能不够高效,对于大规模的数据操作,推荐使用第三方库如Json.NET,它提供了更全面和高性能的JSON处理功能。
以下将详细介绍如何使用C#和Json.NET将任意类型转换为JSON。 首先,确保已经安装了Json.NET库。如果还没有安装,可以通过NuGet包管理器添加,命令如下: ``` Install-Package Newtonsoft.Json ``` 安装完成后,你...
2. **预定义的类型转换器**:Json.NET内建了大量针对.NET框架类型如DateTime、Guid等的转换器,确保高效转换。 四、其他功能 1. **JSON Schema验证**:Json.NET提供了JsonSchema和JsonSchemaGenerator,可以对JSON...
在.NET中,我们可以创建一个DateTime扩展类,添加两个方法:ToJsTime和FromJsTime,以实现DateTime到JavaScript日期格式的转换。以下是一个示例代码: ```csharp using System; using System.Globalization; ...
总的来说,解决ASP.NET MVC返回JsonResult中DateTime类型数据格式问题的关键在于创建自定义的JsonResult,覆盖默认的序列化行为,然后根据需求调整日期时间的格式。通过这种方式,你可以确保日期时间按照预期的方式...
本篇文章将深入探讨.NET日期控件的使用,包括日期格式化、事件处理以及与数据库交互等方面的知识点。 1. **DateTime结构** .NET框架中的DateTime结构表示日期和时间,具有多种属性,如Year、Month、Day等,可以...
在.NET中,同样可以使用JavaScriptSerializer类来解析JSON字符串,将其转换为.NET对象。以下是一个例子,演示如何解析包含特定键值的JSON字符串: ```csharp // 假设有如下的JSON字符串 string jsonString = "{\...
总结来说,通过自定义`JsonResult`和`JavaScriptConverter`,我们可以有效地解决ASP.NET MVC返回的JSON数据中DateTime类型字段格式不理想的问题。这种方式不仅保持了后端和前端数据交互的一致性,还避免了前端处理...