एक बिट फ्लैग कई हाँ‑या‑ना वाले उत्तरों को एक ही संख्या में समेट देता है। उस संख्या का हर बाइनरी अंक एक अलग स्विच होता है: चालू या बंद, सेट या अनसेट। यह किसी प्रोग्राम के लिए कुछ छोटी‑छोटी जानकारियाँ एक ही मान में सहेजने का संक्षिप्त तरीका है।
मूल्य कहाँ से आता है
बिट फ्लैग, जिन्हें बिट फील्ड भी कहा जाता है, प्रोग्रामिंग से आते हैं। C और C++ जैसी भाषाओं में वे डेवलपर को कई बूलियन मान एक ही बाइट या बाइटों के सेट के भीतर रखने देते हैं, जहाँ हर बिट या बिटों के समूह का अलग से संदर्भ लिया जा सकता है। फ़ाइल फ़ॉर्मैट अपनी सामग्री से संबंधित विकल्पों को रिकॉर्ड करने के लिए यही तरीका अपनाते हैं।
किसी metadata रिपोर्ट में आप प्रायः ZIP archive पर bit flag देखेंगे, और उन Office format पर भी जो अंदरूनी रूप से ZIP container होते हैं: DOCX, XLSX और PPTX दस्तावेज़। ODT फ़ाइलें और EPUB ई‑बुक भी यह flag सहेजते हैं, लेकिन रिपोर्ट इसे दिखाए, यह ज़रूरी नहीं है। ZIP format archive के अंदर हर item को एक general purpose bit flag देता है, और जिस प्रोग्राम ने archive बनाया होता है, वही इसे सेट करता है। इस मान को कोई मैन्युअल रूप से टाइप नहीं करता।
मान को कैसे पढ़ें
यह फ्लैग आम तौर पर हेक्साडेसिमल में दिखाया जाता है, जो सोलह के आधार वाली संख्या प्रणाली है और शुरू में 0x के साथ लिखी जाती है। 0x0 का मान बताता है कि कोई स्विच सेट नहीं है, जो सामान्य स्थिति है। 0x2 या 0x808 जैसे मानों का मतलब है कि एक या अधिक बिट चालू हैं, और आप उन्हें संख्या को बाइनरी में बदलकर और हर पोज़ीशन को देखकर पढ़ते हैं।
ZIP के तीन स्विच जानने लायक हैं:
- पहला बिट आइटम को एन्क्रिप्टेड के रूप में चिन्हित करता है, यानी उसे पासवर्ड की ज़रूरत है
- चौथा बिट बताता है कि आइटम का आकार और चेकसम डेटा से पहले की बजाय बाद में लिखा गया था, जो तब होता है जब कोई आर्काइव तुरंत बनते समय तैयार किया जाता है
- बारहवाँ बिट बताता है कि आइटम का नाम UTF-8 में सहेजा गया है, वह कैरेक्टर एनकोडिंग जो उच्चारण चिह्न, गैर‑लैटिन लिपियाँ और इमोजी दर्शा सकती है
यह आपकी फ़ाइल के लिए क्यों महत्वपूर्ण है
यह फ्लैग वह व्यवहार समझाता है जो वरना रहस्यमय लगता। यहीं पर पासवर्ड‑सुरक्षित दस्तावेज़ यह घोषित करता है कि वह लॉक है, इससे पहले कि कोई प्रोग्राम आपसे पासवर्ड माँगे। यही कारण है कि कुछ ऐप तब तक नहीं बता पाते कि आर्काइव के भीतर कोई आइटम कितना बड़ा है जब तक वे उसे अनपैक न कर लें। और यही वजह है कि जिन फ़ाइल नामों में उच्चारण चिह्न या चीनी अक्षर हों वे एक अनपैकिंग ऐप में बिल्कुल सही दिखते हैं और दूसरे में बेतुके, क्योंकि एक UTF-8 वाले स्विच का पालन करता है और दूसरा किसी पुराने एनकोडिंग को मान कर चलता है।
यह फ़ील्ड जो काम नहीं करता, वह है गुणवत्ता का वर्णन करना, और यह कोई निजी जानकारी नहीं रखता। यह केवल इस बारे में एक तकनीकी टिप्पणी है कि फ़ाइल कैसे लिखी गई थी, और तब उपयोगी है जब कुछ खुल नहीं रहा हो और आप कारण जानना चाहते हों।