XLSX ते JSON रूपांतरण: ब्राउझरमध्येच, सर्व्हरशिवाय
हे पृष्ठ तुम्हाला एक्सेल (XLSX) फाइल अपलोड करून त्यातील पहिल्या वर्कशीटचा डेटा एका संरचित JSON फाइलमध्ये रूपांतरित करून देते. संपूर्ण प्रक्रिया तुमच्या ब्राउझरमध्येच घडते – कोणताही डेटा सर्व्हरवर अपलोड होत नाही. तुम्ही XLSX फाइल ड्रॅग-अँड-ड्रॉप करू शकता किंवा फाइल निवडक वापरून ती निवडू शकता.
हे पृष्ठ इतरांपेक्षा कसे वेगळे आहे
XLSX ते JSON रूपांतरण म्हणजे CSV रूपांतरण नाही. XLSX फाइल ही एक झिप केलेली XML कार्यपुस्तिका आहे ज्यामध्ये अनेक शीट्स, सेल प्रकार (मजकूर, संख्या, दिनांक, बुलियन), सूत्रे आणि समृद्ध फॉरमॅटिंग असू शकते. JSON हा एक टाइप केलेला, नेस्टेबल फॉरमॅट आहे – तो ऑब्जेक्ट्स, अॅरे, संख्या, बुलियन आणि शून्य (null) यांना समर्थन देतो. याचा अर्थ XLSX वरून JSON मध्ये रूपांतरित करताना, संख्यात्मक आणि बुलियन सेल मूल्ये टाइप केलेली JSON मूल्ये म्हणून जतन केली जाऊ शकतात (उद्धरणांमध्ये बळजबरीने बदलली जात नाहीत). सेल फॉरमॅटिंग, सूत्रे (ज्यांची गणना केली जात नाही) आणि पहिल्या वर्कशीट व्यतिरिक्तील कोणताही डेटा टाकून दिला जातो. CSV प्रमाणे, जे प्रत्येक रांग एका साध्या मजकूर ओळीत सपाट करते, JSON टॅब्युलर रचना ऑब्जेक्टच्या अॅरे म्हणून दर्शवू शकते, स्तंभ नावे की म्हणून ठेवून. तथापि, स्त्रोत तक्ता सपाट आहे – XLSX तक्त्यामध्ये स्वतःच कोणतीही श्रेणीबद्धता नसते – त्यामुळे नेस्टेड JSON रचना आपोआप तयार होत नाहीत.
XLSX फाइलच्या आत काय आहे
XLSX फाइल ही एक झिप केलेली XML कार्यपुस्तिका आहे. तुम्ही तिचे.zip मध्ये नाव बदलून आत पाहू शकता. आतमध्ये अनेक XML फाइली असतात: xl/workbook.xml कार्यपुस्तिकेची रचना परिभाषित करते, xl/worksheets/sheet1.xml पहिल्या शीटचा डेटा व सेल प्रकार साठवते, xl/styles.xml फॉरमॅटिंग माहिती ठेवते. प्रत्येक सेलचा एक प्रकार असतो: t="s" म्हणजे स्ट्रिंग (मजकूर), t="n" म्हणजे संख्या, t="b" म्हणजे बुलियन. दिनांक सेल्स सामान्यतः संख्यात्मक मूल्ये म्हणून साठवले जातात ज्याचा अर्थ 1 जानेवारी 1900 पासूनचे दिवस असा होतो. सूत्र सेल्स f टॅगमध्ये सूत्र ठेवतात, पण <v> टॅगमध्ये त्याचे शेवटचे गणित मूल्य (जेव्हा फाइल जतन केली गेली) साठवले जाते.
हे पृष्ठ फक्त पहिली वर्कशीट वाचते. xl/workbook.xml मधून ती शीट ओळखली जाते आणि xl/worksheets/sheet1.xml वरून सेल मूल्ये काढली जातात. सेल रेफरन्सेस (जसे A1, B2) पार्स करून स्तंभ नावे (पहिल्या रांगेतून) आणि पंक्ती डेटा तयार केला जातो.
JSON फाइलच्या आत काय आहे
JSON चे स्वरूप सोपे आहे. ऑब्जेक्ट्स {} कंसात, अॅरे `` कंसात असतात. चावी-मूल्य जोड्या कोलनने विभक्त केल्या जातात. स्ट्रिंग्सच्या दुहेरी उद्धरणांमध्ये असतात. संख्या उद्धरणांशिवाय लिहिल्या जातात. बुलियन मूल्ये true किंवा false असतात. null मूल्य शून्य डेटा दर्शवते. या पृष्ठावर, आउटपुट JSON हा ऑब्जेक्टचा अॅरे असतो. प्रत्येक ऑब्जेक्ट एका पंक्तीशी संबंधित असतो. चाव्या पहिल्या रांगेतील स्तंभ नावे असतात.
उदाहरण: XLSX फाइलचा पहिला शीट असा असेल:
| नाव | वय | सक्रिय |
|---|---|---|
| अमित | 30 | TRUE |
| सीता | 25 | FALSE |
तर आउटपुट JSON असे असेल:
[
{"नाव": "अमित", "वय": 30, "सक्रिय": true},
{"नाव": "सीता", "वय": 25, "सक्रिय": false}
]
लक्षात घ्या 30 ही संख्या उद्धरणांशिवाय आली आहे आणि TRUE हे true (बुलियन) बनले आहे. CSV मध्ये हे "30" आणि "TRUE" असे स्ट्रिंग म्हणून येईल.
सेल प्रकार मॅपिंग: एक्सेलचे प्रकार JSON मध्ये
हे रूपांतरण एक्सेलच्या सेल प्रकारांवर आधारित JSON मूल्ये तयार करते.
| Excel storage type | JSON output | Example cell value |
|---|---|---|
| Number (integer or float) | JSON number | 42, 3.1415, -7.99e2 |
| Boolean | JSON boolean | true or false |
| Date / DateTime | ISO 8601 string | "2023-08-15T14:30:00.000Z" |
| Shared string / inline text | JSON string | "Quarterly Report" |
| Empty cell | Empty string "" |
(nothing) |
| Error | JSON string | "#DIV/0!" |
- संख्या (
t="n"): एक्सेलमधील संख्यात्मक सेल थेट JSON नंबर म्हणून लिहिला जातो. दशांश बिंदू जतन केला जातो. हजारो विभाजक टाकून दिले जातात. - बुलियन (
t="b"): एक्सेलमधीलTRUEकिंवाFALSEमूल्य JSON मध्येtrueकिंवाfalseया बुलियन मूल्यात रूपांतरित होते. - स्ट्रिंग (
t="s"): मजकूर सेल्स JSON स्ट्रिंगमध्ये बदलल्या जातात, दुहेरी उद्धरणांमध्ये. - दिनांक (संख्या म्हणून): एक्सेल दिनांक संख्यात्मक मूल्य म्हणून साठवतो. हे रूपांतरण त्या मूल्याला ISO 8601 स्ट्रिंगमध्ये रूपांतरित करते, जसे की
"2023-08-15T00:00:00.000Z". - रिक्त सेल: रिक्त सेल JSON मध्ये रिक्त स्ट्रिंग
""म्हणून दिसतात. - सूत्र (
fटॅग): सूत्र सेलसाठी, फक्त शेवटचे संग्रहित मूल्य (<v>टॅगमधील) वापरले जाते. नवीन गणना होत नाही. जर सूत्रामुळे त्रुटी असेल, तर ती मूल्य स्ट्रिंग म्हणून जतन केली जाऊ शकते.
सूत्रे का हरवली जातात
एक्सेल सूत्रे गणना न करता साठवतो. जेव्हा तुम्ही फाइल उघडता तेव्हा एक्सेल सूत्रांची पुनर्गणना करतो. या पृष्ठावर, एक्सेल रीफ्रेश झालेला नाही. ते फक्त फाइलमध्ये शेवटचे जतन केलेले मूल्य वाचते. म्हणूनच =A1+B1 सारखे सूत्र असलेला सेल त्याचे परिणाम म्हणून संख्यात्मक मूल्य दर्शवेल. पण जर फाइल उघडली गेली नसेल आणि जतन करण्यापूर्वी रिफ्रेश केली गेली नसेल तर मूल्य जुने असू शकते.
ब्राउझरमध्ये प्रक्रिया: गोपनीयता
हे पृष्ठ संपूर्ण रूपांतरण तुमच्या ब्राउझरमध्ये करते. XLSX फाइल कधीही इंटरनेटवर पाठवली जात नाही. तुमचा ब्राउझर फाइल पार्स करतो आणि रूपांतरित आउटपुट तुमच्या डिव्हाइसवर लिहितो. जर तुम्ही संवेदनशील डेटा (कर्मचारी माहिती, आर्थिक डेटा) हाताळत असाल तर ही एक महत्त्वाची वैशिष्ट्य आहे. कोणताही तृतीय-पक्ष सर्व्हर तुमचा डेटा पाहू शकत नाही.
एकाच वर्कशीटची मर्यादा
हे पृष्ठ फक्त पहिली वर्कशीट वाचते. जर तुमच्या XLSX फाइलमध्ये अनेक शीट्स असतील (उदा. 'जानेवारी', 'फेब्रुवारी', 'मार्च'), तर फक्त पहिली शीटवरील डेटा रूपांतरित होईल. इतर शीट्सकडे दुर्लक्ष केले जाईल. जर तुम्हाला इतर शीट्सचा डेटा हवा असेल, तर तुम्ही त्या शीट्सची स्वतंत्र XLSX फाइल्स तयार करावी लागतील किंवा त्या शीट्स पहिल्या स्थानावर हलवाव्या लागतील.
रूपांतरणानंतरची माहिती
रूपांतरण पूर्ण झाल्यावर, तुम्हाला पुढील गोष्टी दिसतील:
- आउटपुट JSON फाइलची पूर्वावलोकन (पहिले 8 पंक्ती आणि 8 स्तंभ).
- रूपांतरित तक्त्यातील पंक्ती आणि स्तंभांची संख्या.
- आउटपुट JSON फाइलचा आकार.
- एक डाउनलोड बटण.
सामान्य त्रुटी संदेश
खालील त्रुटी संदेश दिसू शकतात:
| त्रुटी संदेश | कारण |
|---|---|
| “ही एक्सेल फाइल उघडता आली नाही.” | XLSX फाइल दूषित आहे किंवा त्याचे स्वरूप चुकीचे आहे. |
| “या फाइलमध्ये कोणतीही टेबल पंक्ती नाही.” | पहिल्या वर्कशीटमध्ये डेटाची पंक्ती नाही. |
“ही फाइल खूप मोठी आहे. ‹max› पेक्षा कमी आकाराची फाइल वापरा.” |
फाइल आकार 8 MB मर्यादेपेक्षा जास्त आहे. |
| “CSV, JSON किंवा XLSX फाइल निवडा.” | निवडलेली फाइल CSV, JSON किंवा XLSX फाइल नाही. |
| “ही फाइल रूपांतरित करता आली नाही.” | अज्ञात त्रुटी. |
| “रूपांतरण रद्द केले.” | वापरकर्त्याने प्रक्रिया रद्द केली. |
| “हे रूपांतरण खूप वेळ घेत आहे. लहान फाइल वापरून पहा.” | रूपांतरणाला सुमारे 12 सेकंदांपेक्षा जास्त वेळ लागला. |
वारंवार विचारले जाणारे प्रश्न (FAQ)
प्रश्न 1: माझ्याकडे अनेक शीट्स असलेली XLSX फाइल आहे. मला विशिष्ट शीटची गरज आहे. काय करावे? उत्तर: हे पृष्ठ फक्त पहिली शीट वाचते. तुम्हाला हवी असलेली शीट पहिल्या स्थानावर हलवण्यासाठी मूळ XLSX फाइल संपादित करा किंवा त्या शीटची स्वतंत्र XLSX फाइल तयार करा.
प्रश्न 2: दिनांक मूल्ये JSON मध्ये संख्या म्हणून का दिसतात? उत्तर: एक्सेल दिनांक संख्यात्मक मूल्य (सेरियल नंबर) म्हणून साठवतो. हे पृष्ठ ते मूल्य ISO 8601 स्ट्रिंगमध्ये रूपांतरित करते. तुम्हाला विशिष्ट दिनांक स्वरूप हवे असल्यास, तुम्हाला ISO स्ट्रिंगवर प्रक्रिया करावी लागेल.
प्रश्न 3: एकत्रित केलेले सेल (merged cells) कसे हाताळले जातात?
उत्तर: एकत्रित केलेले सेल्सची फक्त वरच्या-डावीकडील सेलमध्ये मूल्य असते. इतर सेल्स रिक्त स्ट्रिंग ("") म्हणून दिसतील. एकत्रिकरण विचारात घेतले जात नाही.
प्रश्न 4: सूत्रे (formulas) का काम करत नाहीत? उत्तर: रूपांतरण फाइलमध्ये संग्रहित मूल्य वाचते, नवीन गणना करत नाही. सूत्राचा परिणाम मिळवण्यासाठी एक्सेलमध्ये फाइल उघडून ती सेव्ह करा, नंतर रूपांतरित करा.
प्रश्न 5: मी XLSX फाइल ड्रॅग-अँड-ड्रॉप केली, पण काहीच होत नाही. का? उत्तर: निवडलेली फाइल CSV, JSON किंवा XLSX फाइल नाही. तसेच, फाइल आकार मर्यादा तपासा.
प्रश्न 6: आउटपुट JSON फाइल खूप मोठी आहे. आकार कमी करण्याचा मार्ग आहे का? उत्तर: फाइल 8 MB पेक्षा जास्त नसावी. तसेच, 10,000 पेक्षा जास्त पंक्ती आणि 200 पेक्षा जास्त स्तंभ नसावेत.