एक्सएलएसबी फाइल क्या है?
XLSB फाइल फॉर्मेट एक्सेल बाइनरी फाइल फॉर्मेट को निर्दिष्ट करता है, जो रिकॉर्ड्स और स्ट्रक्चर्स का एक संग्रह है जो एक्सेल वर्कबुक कंटेंट को निर्दिष्ट करता है। सामग्री में संख्याओं की असंरचित या अर्ध-संरचित सारणी, पाठ, या संख्या और पाठ दोनों, सूत्र, बाहरी डेटा कनेक्शन, चार्ट और चित्र शामिल हो सकते हैं। XLSX (जो ओपन XML फ़ाइल स्वरूप पर आधारित है) के विपरीत, XLSB बाइनरी एक्सेल वर्कबुक फ़ाइल का प्रतिनिधित्व करता है। XLSB फाइलें तेजी से पढ़ी और लिखी जा सकती हैं जो उन्हें बड़ी फाइलों के साथ काम करने के लिए उपयोगी बनाती हैं। XLSB का उपयोग शायद ही कभी कार्यपुस्तिकाओं को संग्रहीत करने के लिए किया जाता है क्योंकि XLSX (और पहले XLS) कार्यपुस्तिकाओं को सहेजने के लिए सबसे आम उपयोगकर्ता द्वारा चयनित फ़ाइल स्वरूप हैं। इसे Microsoft Office 2007 और इसके बाद के संस्करण द्वारा खोला जा सकता है।
एक्सएलएसबी फ़ाइल प्रारूप निर्दिष्टीकरण
एक्सएलएसबी फ़ाइल प्रारूप के लिए फ़ाइल प्रारूप विनिर्देशों को 2008 में संस्करण 1.0 के रूप में सार्वजनिक किया गया था। तब से, विनिर्देशों को कई बार संशोधित किया गया है और विनिर्देशों का नवीनतम संस्करण (v 10.0) अप्रैल 2018 में प्रकाशित किया गया था। विनिर्देश Microsoft द्वारा सार्वजनिक रूप से [MS-XLSB] - एक्सेल बाइनरी फ़ाइल प्रारूप विनिर्देशों के रूप में उपलब्ध हैं। /msdn.microsoft.com/en-us/library/cc313133(v#office.12).aspx) और XLSB फ़ाइल स्वरूप में फ़ाइलों को पढ़ने या लिखने के लिए किसी के द्वारा परामर्श किया जाना चाहिए।
एक्सएलएसबी फ़ाइल संरचना
एक एक्सएलएसबी फ़ाइल एक पैकेज है जिसमें भागों का संग्रह होता है। इन भागों में कार्यपुस्तिका डेटा और पैकेज की संरचना सहित कार्यपुस्तिका की सामग्री के बारे में जानकारी होती है। कुछ भागों में बाइनरी रिकॉर्ड का उपयोग करके संग्रहीत जानकारी होती है, कुछ XML के रूप में, जबकि अन्य में बाइट्स की बाइनरी स्ट्रीम के रूप में संग्रहीत जानकारी होती है। प्रत्येक बाइनरी रिकॉर्ड में शून्य या अधिक संरचित फ़ील्ड होते हैं जिनमें कार्यपुस्तिका डेटा होता है।
पैकेट
एक XLSB पैकेज एक ज़िप संग्रह है जिसमें कार्यपुस्तिका का बिल्कुल एक भाग होना चाहिए। यह भाग इस संकुल संबंध भाग में किसी संबंध का लक्ष्य होना चाहिए। कार्यपुस्तिका भाग XLSB दस्तावेज़ का प्रारंभिक भाग है।
भाग
एक भाग बाइट्स की एक धारा है जिसमें एक संबद्ध सामग्री प्रकार होता है जो भाग में संग्रहीत सामग्री की प्रकृति और प्रकार को निर्दिष्ट करता है। कुछ भाग बाइनरी प्रारूप में जानकारी संग्रहीत करते हैं जबकि अन्य XML के रूप में जानकारी संग्रहीत करते हैं। भागों की गणना विनिर्देश दस्तावेज़ के अनुभाग में मान्य भागों, सामग्री प्रकारों और आवश्यक/वैकल्पिक संबंधों की सूची है एक पैकेज में सभी भागों।
रिश्ता
स्रोत और लक्ष्य संसाधन एक संबंध से जुड़े होते हैं। एक रिश्ता हो सकता है:
पैकेज संबंध: जहां लक्ष्य एक हिस्सा है और स्रोत समग्र रूप से पैकेज है
पार्ट-टू-पार्ट रिलेशनशिप: जहां लक्ष्य एक हिस्सा है और स्रोत पैकेज का एक हिस्सा है
स्पष्ट संबंध: जहां संबंध तत्व के आईडी विशेषता मान को संदर्भित करके स्रोत भाग की सामग्री से संसाधन को संदर्भित किया जाता है
अंतर्निहित संबंध एक ऐसा संबंध है जो स्पष्ट नहीं है
आंतरिक संबंध: जहां लक्ष्य पैकेज का एक हिस्सा है
बाहरी संबंध: जहां लक्ष्य एक बाहरी संसाधन है जो पैकेज में नहीं है
अभिलेख
एक रिकॉर्ड बुनियादी बिल्डिंग ब्लॉक है जिसका उपयोग कार्यपुस्तिका में सुविधाओं के बारे में जानकारी संग्रहीत करने के लिए किया जाता है। प्रत्येक बाइनरी रिकॉर्ड बाइट्स का एक चर-लंबाई क्रम है। एक बाइनरी रिकॉर्ड में तीन घटक होते हैं:
- एक रिकॉर्ड प्रकार
- एक रिकॉर्ड आकार, और
- रिकॉर्ड डेटा जो उस रिकॉर्ड प्रकार के लिए विशिष्ट है।
रिकॉर्ड प्रकार: रिकॉर्ड प्रकार रिकॉर्ड द्वारा निर्दिष्ट रिकॉर्ड का प्रकार दिखाता है। यह इस रिकॉर्ड के लिए विशिष्ट रिकॉर्ड डेटा की संरचना को भी निर्दिष्ट करता है। मान्य रिकॉर्ड प्रकार विनिर्देशों दस्तावेज़ के रिकॉर्ड गणना अनुभाग में सूचीबद्ध हैं। रिकॉर्ड प्रकार एक या दो बाइट होना चाहिए और 128 से अधिक या 16384 से कम होना चाहिए।
रिकॉर्ड आकार: रिकॉर्ड आकार बाइट्स की संख्या निर्दिष्ट करता है जो रिकॉर्ड डेटा के कुल आकार को निर्दिष्ट करता है। यह मान एक से चार बाइट होना चाहिए। यह मान एक बाइट होना चाहिए यदि निम्न बाइट में उच्च बिट 0 के बराबर है; अन्यथा, यह मान एक बाइट से अधिक होना चाहिए। यदि बाइट्स की संख्या एक बाइट से अधिक है, तो प्रत्येक क्रमिक बाइट में उच्च बिट निर्दिष्ट करता है कि एक अतिरिक्त बाइट का उपयोग किया जाता है या नहीं। यदि दूसरी बाइट का उच्च बिट 1 के बराबर है, तो यह मान एक अतिरिक्त तीसरे बाइट का उपयोग करना चाहिए। यदि तीसरे बाइट का उच्च बिट 1 के बराबर है, तो यह मान अतिरिक्त चौथे बाइट का उपयोग करना चाहिए। चौथे बाइट के हाई बिट को नजरअंदाज किया जाना चाहिए। मूल्य में संयुक्त प्रत्येक बाइट के सात निम्न बिट होते हैं। कम, सबसे कम महत्वपूर्ण बिट्स पहले बाइट के भीतर समाहित होते हैं, और प्रत्येक क्रमिक बाइट में पिछले बाइट की तुलना में उच्च क्रम बिट्स होते हैं।
रिकॉर्ड डेटा: रिकॉर्ड डेटा घटक में ऐसे फ़ील्ड होते हैं जो एक विशेष रिकॉर्ड प्रकार के अनुरूप होते हैं और रिकॉर्ड के शेष भाग को शामिल करते हैं। रिकॉर्ड गणना में सूचीबद्ध किसी दिए गए रिकॉर्ड प्रकार के लिए फ़ील्ड का क्रम और संरचना रिकॉर्ड्स में उस रिकॉर्ड प्रकार के संबंधित अनुभाग में निर्दिष्ट हैं। रिकॉर्ड डेटा घटक का कुल आकार रिकॉर्ड आकार के बराबर होना चाहिए। रिकॉर्ड डेटा घटक में फ़ील्ड्स में साधारण मान, मानों की सरणियाँ, कई फ़ील्ड्स की संरचनाएँ, फ़ील्ड्स की सरणियाँ और संरचनाओं की सरणियाँ हो सकती हैं।
XLSB रिकॉर्ड उदाहरण
निम्न रिकॉर्ड प्रकार और रिकॉर्ड आकार 200 बाइट्स के आकार के साथ एक BrtCommentText रिकॉर्ड निर्दिष्ट करते हैं:
11111101 00000100 11001000 00000001 [रिकॉर्ड फ़ील्ड]
पहला बाइट 11111101 है, जो 125 के निम्न मान को निर्दिष्ट करता है और रिकॉर्ड प्रकार को दूसरे बाइट की आवश्यकता होती है। दूसरी बाइट 00000100 है, जो 4 * 128 के उच्च मान को निर्दिष्ट करती है, जो 512 के बराबर है। रिकॉर्ड प्रकार का मान 125 + 512, या 637 है, जो BrtCommentText रिकॉर्ड प्रकार से मेल खाता है। अगला बाइट 11001000 है, जो 72 के निम्न मान को निर्दिष्ट करता है और रिकॉर्ड आकार के लिए दूसरे बाइट की आवश्यकता होती है। दूसरी बाइट 00000001 है, जो 1 * 128 के उच्च मान को निर्दिष्ट करती है और रिकॉर्ड आकार के लिए अतिरिक्त बाइट की आवश्यकता नहीं होती है। रिकॉर्ड आकार 72 + 128, या 200 है, जो रिकॉर्ड डेटा घटक के बाइट्स में कुल आकार निर्दिष्ट करता है। रिकॉर्ड डेटा घटक में फ़ील्ड्स BrtCommentText द्वारा निर्दिष्ट किए गए हैं।