में मैं नीचे की तरह दो क्षेत्र (वेतन ध्यान है कि पहले क्षेत्र मिलीसेकेंड अनुभाग है) है:DateFormat पैटर्न "yyyy-MM-dd'T'HH: mm: ss.SSS'Z '" Gson
{
"updateTime":"2011-11-02T02:50:12.208Z",
"deliverTime":"1899-12-31T16:00:00Z"
}
मैं Gson के साथ एक वस्तु के लिए JSON स्ट्रिंग deserialize करना चाहते हैं, तो मैं एक Gson
उदाहरण मिलता है:
GsonBuilder gb = new GsonBuilder();
gb.setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
gson = gb.create();
पहले क्षेत्र जावा दिनांक प्रकार के deserialized है: 2011-11-02 02:50 : 12.208 (टीआई को नजरअंदाज करने जैसा दिखता है मुझे जोन सेक्शन-'Z ', जिसकी मुझे उम्मीद है)। हालांकि, दूसरा क्षेत्र 1 9 00-01-01 00:00:00 (मैं चीन में रहता हूं, यहां +8 जीएमटी) में deserialized है, ऐसा लगता है कि समय क्षेत्र खंड-'Z 'deserialization में एक भूमिका निभाता है।
दूसरा फ़ील्ड समय क्षेत्र अनुभाग का उपयोग क्यों करता है? यह मेरी अपेक्षा नहीं है।
मेरे लिए यह दूसरी तारीख स्ट्रिंग को पार्स करने में विफल रहता है ('java.text.ParseException: अवांछित दिनांक:" 1899-12-31T16: 00: 00Z "')। आप किस जीसन का उपयोग कर रहे हैं? –
आप सरल उद्धरणों में टी और जेड को क्यों संलग्न करते हैं? मैं नहीं (जीसन 1.7.1) –
बस आपको अधिक फीडबैक देने के लिए, मेरा पैटर्न एमएम/डीडी/वाई एचएच: मिमी: एसएस एसएसएसजेड मुझे इस तरह की तारीख देता है: 02/20/13 18:03:11 08 9 + 0100 –