เจสัน
{
"title":"Mozilla Firefox",
"id":24,
"parent":2,
"dateAdded":1356753810000000,
"lastModified":1356753810000000,
"type":"text/x-moz-place-container",
"children":[]
}
C#
class Bookmark
{
public string title;
public string id;
[JsonProperty(ItemConverterType = typeof(JavaScriptDateTimeConverter))]
public DateTime dateAdded;
[JsonProperty(ItemConverterType = typeof(JavaScriptDateTimeConverter))]
public DateTime lastModified;
public string type;
public string root;
public long parent;
public List<Bookmark> children;
}
private static void Main(string[] args)
{
var json = File.ReadAllText(@"T:/bookmarks-2013-11-13.json");
var bookmarks = JsonConvert.DeserializeObject<Bookmark>(json);
}
ฉันได้รับข้อยกเว้นเมื่อฉันพยายามเรียกใช้สิ่งนี้
ข้อมูลเพิ่มเติม: เกิดข้อผิดพลาดในการอ่านวันที่ โทเค็นที่ไม่คาดคิด: จำนวนเต็ม เส้นทาง 'วันที่เพิ่ม'
ฉันคิดว่าการใช้ JavaScriptDateTimeConverter
ทำให้ JSON.NET สามารถหาวิธีดีซีเรียลไลซ์การประทับเวลายูนิกซ์เหล่านั้นได้ (ms μs ตั้งแต่ยุค) วิธีที่ง่ายที่สุดในการทำเช่นนี้คืออะไร?
มีปัญหาในการหาเอกสารเกี่ยวกับตัวแปลง... การเขียนด้วยตัวเองก็คงไม่ยากเกินไปหากจำเป็น
แก้ไข: จริงๆ แล้วคือหน่วยไมโครวินาที ไม่ใช่มิลลิวินาที