CSV को JSON में बदलें
हर CSV पंक्ति एक JSON ऑब्जेक्ट बन जाती है, और हेडर पंक्ति प्रॉपर्टी के नाम देती है। यह गाइड एक छोटी फ़ाइल को, जिसमें उद्धरण चिह्नों के भीतर एक अल्पविराम और एक एस्केप किया गया उद्धरण चिह्न है, कनवर्टर से गुज़ारती है और उसके लागू किए गए हर नियम को समझाती है।
हल किया गया उदाहरण
id,name,item,price,paid 1,"Smith, Jane","Monitor 27""",189.99,true 2,Kim,Keyboard,,false
[
{
"id": 1,
"name": "Smith, Jane",
"item": "Monitor 27\"",
"price": 189.99,
"paid": true
},
{
"id": 2,
"name": "Kim",
"item": "Keyboard",
"price": null,
"paid": false
}
]"Smith, Jane" दोहरे उद्धरण चिह्नों में घिरा है, इसलिए उसका अल्पविराम नया कॉलम शुरू करने के बजाय मान के अंदर ही रहता है। "Monitor 27""" में दोहराया गया उद्धरण चिह्न एक वास्तविक उद्धरण चिह्न बन जाता है। Kim का खाली price null बन जाता है, और संख्याएँ व true/false स्ट्रिंग के रूप में नहीं, बल्कि JSON प्रकारों के रूप में आती हैं।
कनवर्टर इसे कैसे संभालता है
- हर गैर-खाली लाइन एक रिकॉर्ड है और खाली लाइनें छोड़ दी जाती हैं। उद्धृत मान में लाइन ब्रेक नहीं हो सकता।
- जब किसी मान में सीमांकक हो, तो उसे दोहरे उद्धरण चिह्नों में रखें। उद्धरण चिह्नों के अंदर, उद्धरण चिह्न को दो बार लिखें ("")।
- हर मान की शुरुआत और अंत के रिक्त स्थान हटा दिए जाते हैं।
- “हेडर के रूप में पहली पंक्ति” चालू होने पर पहली लाइन कुंजियाँ देती है; बंद होने पर कुंजियाँ col0, col1, col2 आदि होती हैं।
- खाली सेल और शब्द null, null बन जाते हैं; true और false (किसी भी केस में) बूलियन बन जाते हैं; और संख्यात्मक टेक्स्ट उद्धृत होने पर भी संख्या बन जाता है, इसलिए 00123, 123 बन जाता है।
- जिन पंक्तियों में हेडर से कम मान हैं, उनके छूटे हुए कॉलम को null मिलता है; अंतिम हेडर के बाद वाले मान हटा दिए जाते हैं।