डेटा · 2 मिनट में पढ़ें ·
JSON से CSV, बिना एक भी फ़ील्ड खोए
नेस्टेड key, वैकल्पिक फ़ील्ड और टेक्स्ट के अंदर कॉमा: 4Dev उलझे हुए JSON को स्प्रेडशीट के लिए तैयार CSV में कैसे बदलता है।

स्प्रेडशीट सपाट होती है, JSON नहीं। JSON को CSV में बदलते समय हर बार तय करना पड़ता है कि नेस्टेड ऑब्जेक्ट, array और सिर्फ़ कुछ रिकॉर्ड में मौजूद key के साथ क्या किया जाए। 4Dev का कन्वर्टर ठीक यही करता है।
हर key को अपना कॉलम मिलता है
हेडर पंक्ति सिर्फ़ पहले रिकॉर्ड से नहीं, बल्कि सभी ऑब्जेक्ट की key से बनती है, उसी क्रम में जिसमें वे पहली बार आती हैं। जिस रिकॉर्ड में कोई key नहीं है, उसे खाली सेल मिलता है, इसलिए कॉलम कभी खिसकते नहीं और वैकल्पिक फ़ील्ड कभी गायब नहीं होते।
[{"id":1,"name":"Ada"},
{"id":2,"name":"Alan","note":"optional"}]
id,name,note
1,Ada,
2,Alan,optional
नेस्टेड ऑब्जेक्ट अंडरस्कोर वाले कॉलम बन जाते हैं
ऑब्जेक्ट को उनकी key अंडरस्कोर से जोड़कर सपाट किया जाता है, इसलिए {"address":{"city":"Lisbon"}} address_city नाम का कॉलम बन जाता है। साधारण वैल्यू वाला array एक ही सेल में जाता है ("admin, dev"), और ऑब्जेक्ट वाला array अपने सेल में JSON टेक्स्ट के रूप में रहता है, यानी कुछ भी नहीं छूटता।
कॉमा और कोटेशन मार्क अपने-आप escape होते हैं
जिस भी वैल्यू में कॉमा, डबल कोट या नई लाइन हो, उसे डबल कोट में रखा जाता है और अंदर के कोट दोहरे कर दिए जाते हैं। यही CSV का मानक नियम है जिसकी Excel और Google Sheets उम्मीद करते हैं।
2,"Alan, T.","says ""hi"""