您可以使用IsoDateTimeConverter
,並指定DateTimeFormat
得到你想要的結果,例如:
MyObject obj = JsonConvert.DeserializeObject<MyObject>(jsonString,
new IsoDateTimeConverter { DateTimeFormat = "dd/MM/yyyy" });
演示:
class Program
{
static void Main(string[] args)
{
string json = @"{ ""Date"" : ""09/12/2013"" }";
MyObject obj = JsonConvert.DeserializeObject<MyObject>(json,
new IsoDateTimeConverter { DateTimeFormat = "dd/MM/yyyy" });
DateTime date = obj.Date;
Console.WriteLine("day = " + date.Day);
Console.WriteLine("month = " + date.Month);
Console.WriteLine("year = " + date.Year);
}
}
class MyObject
{
public DateTime Date { get; set; }
}
輸出:
day = 9
month = 12
year = 2013
多虧了這一點,我想出了: '公共靜態牛逼FromJSON(此字符串str) \t \t { \t \t VAR串行=新JsonSerializer {DateFormatString = 「DD-MM-YYYY」}; \t \t return serializer.Deserialize (new JsonTextReader(new StringReader(str))); }' –
Makassi