JSON
{
"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);
}
Saya mendapatkan pengecualian ketika saya mencoba menjalankan ini,
Informasi tambahan: Kesalahan membaca tanggal. Token tak terduga: Integer. Jalur 'tanggal Ditambahkan'
Saya pikir dengan menggunakan JavaScriptDateTimeConverter
, JSON.NET dapat mengetahui cara membatalkan serialisasi cap waktu unix tersebut (ms μs sejak zaman). Apa cara termudah untuk melakukan ini?
Mengalami kesulitan menemukan dokumentasi tentang konverter... mungkin tidak akan terlalu sulit untuk menulisnya sendiri jika perlu.
Sunting: Itu sebenarnya mikrodetik, bukan milidetik.