Excel में चीनी CSV: UTF-8, GBK और बिगड़े अक्षर

तालिका वाली शीट और आवर्धक काँच
इस लेख में

यदि चीनी CSV खोलने पर अपठनीय चिह्न दिखाई दें, तो पहले बिना बदली हुई एक प्रति सुरक्षित रखें। फ़ाइल में सही टेक्स्ट बाइट हो सकते हैं जिन्हें Excel ने गलत कैरेक्टर एन्कोडिंग से पढ़ा हो। बिगड़े हुए टेक्स्ट को मूल फ़ाइल पर सहेजने से उसे वापस पाना कठिन हो सकता है।

CSV में टेक्स्ट और विभाजक होते हैं। फ़ाइल का नाम उसकी एन्कोडिंग भरोसेमंद तरीके से नहीं बताता, और यह Excel वर्कबुक जैसी वर्कशीट फ़ॉर्मैटिंग भी नहीं रखता। बाइट को सही पढ़ना पहला चरण है; शीट में कोड और तारीखें सुरक्षित रखना अलग चरण है।

फ़ाइल की मूल एन्कोडिंग चुनना

आधुनिक टेक्स्ट आदान-प्रदान में UTF-8 का व्यापक उपयोग होता है। चीन की मुख्यभूमि के पुराने सिस्टम से निकली फ़ाइलें GBK या संबंधित चीनी एन्कोडिंग इस्तेमाल कर सकती हैं। कुछ पारंपरिक चीनी फ़ाइलें Big5 में होती हैं। लेकिन पारंपरिक अक्षरों जैसा दिखने वाला वाक्य अपने आप में Big5 का प्रमाण नहीं है; Unicode फ़ाइल में दोनों लिपि रूप हो सकते हैं।

संभव हो तो भेजने वाले से निर्यात की एन्कोडिंग पूछें। जानकारी न मिले तो संभावित एन्कोडिंग का पूर्वावलोकन देखें और असली शब्दों, कम प्रचलित नामों तथा विराम चिह्नों को जाँचें। डिकोडर का बिना त्रुटि बाइट स्वीकार कर लेना सही एन्कोडिंग चुने जाने का प्रमाण नहीं है।

आरेख: 中文: UTF-8 E4 B8 AD E6 96 87; GBK D6 D0 CE C4

Excel का टेक्स्ट आयात पूर्वावलोकन

सिर्फ़ डबल-क्लिक पर निर्भर रहने के बजाय Excel की टेक्स्ट या CSV आयात प्रक्रिया इस्तेमाल करें। वर्तमान डेस्कटॉप संस्करणों में यह आम तौर पर Data टैब के Text/CSV आयात विकल्प में मिलती है। स्रोत एन्कोडिंग और विभाजक चुनें, फिर तालिका लोड करने से पहले पूर्वावलोकन देखें। संस्करण और भाषा के अनुसार मेनू के नाम अलग हो सकते हैं।

UTF-8 का बाइट ऑर्डर मार्क, यानी BOM, सीधे फ़ाइल खोलते समय Excel को UTF-8 पहचानने में मदद कर सकता है। यह फ़ाइल की शुरुआत में एन्कोडिंग की पहचान है, पहले कॉलम के नाम का हिस्सा नहीं। कुछ आगे के सिस्टम बिना BOM वाला UTF-8 चाहते हैं, इसलिए अगला अनुप्रयोग जिस रूप की अपेक्षा करता है वही चुनें।

पढ़ने योग्य पूर्वावलोकन को UTF-8 में बदलना

  1. 5 MB तक की एक प्रति चीनी फ़ाइल एन्कोडिंग कन्वर्टर में खोलें।
  2. वास्तविक स्रोत एन्कोडिंग चुनें और पूर्वावलोकन पढ़ें।
  3. सिर्फ़ हेडर नहीं, कई चीनी नाम या विवरण जाँचें।
  4. प्राप्त करने वाले अनुप्रयोग के अनुसार BOM चुनकर UTF-8 में निर्यात करें।
  5. निर्यात की गई फ़ाइल दोबारा खोलें और प्रतिनिधि पंक्तियों की मूल सामग्री से तुलना करें।

फ़ाइल एक्सटेंशन बदलने या BOM जोड़ने से GBK बाइट UTF-8 बाइट नहीं बनते। रूपांतरण में पहले स्रोत टेक्स्ट को सही डिकोड करना और फिर उसी टेक्स्ट को लक्ष्य फ़ॉर्मैट में एन्कोड करना ज़रूरी है।

शुरुआती शून्य और लंबे कोड बचाना

चीनी टेक्स्ट सही दिखने के बाद भी Excel किसी कोड को संख्या या तारीख मान सकता है। आयात करते समय संबंधित कॉलम को टेक्स्ट पर सेट करें। पहचानकर्ता के रूप में 001234 के सभी छह अक्षर बने रहने चाहिए; उसे 1234 बनाना जानकारी खोना है।

अक्षरों की चौड़ाई में अंतर भी आयात के बाद मिलान को प्रभावित कर सकता है। यदि एक फ़ाइल में A123 और दूसरी में A123 हो, तो उसी फ़ील्ड पर सोच-समझकर अक्षर चौड़ाई रूपांतरण लागू करें। इससे एन्कोडिंग की समस्या नहीं सुधरती और इसे पूरे गद्य पर बिना भेदभाव लागू नहीं करना चाहिए।

तीन आम लक्षण अलग पहचानना

क्या दिखाई देता हैपहले क्या जाँचें
चीनी नाम असंबंधित चिह्न बन जाते हैंस्रोत कैरेक्टर एन्कोडिंग
टेक्स्ट पढ़ने योग्य है, पर एक लंबे कॉलम में हैविभाजक और उद्धरण चिह्न
001234, 1234 बन जाता हैकॉलम का डेटा प्रकार

ये समस्याएँ साथ हो सकती हैं, लेकिन इनके कारण अलग हैं। यदि आयातक कॉमा की अपेक्षा करता है, तो केवल UTF-8 चुनने से सेमीकोलन वाली फ़ाइल सही कॉलम में नहीं बँटेगी। विभाजक चुनने से गलत डिकोड किए गए चीनी अक्षर वापस नहीं आएँगे। कॉलम को टेक्स्ट बनाना पहचानकर्ताओं को बचाता है, लेकिन मूल एन्कोडिंग तय नहीं करता।

पूर्वावलोकन इस क्रम में जाँचें: पढ़ने योग्य टेक्स्ट, सही फ़ील्ड सीमाएँ और उपयुक्त कॉलम प्रकार। कुछ ऐसी पंक्तियाँ लें जिनमें चीनी टेक्स्ट, शून्य से शुरू होने वाला कोड और विराम चिह्न वाला फ़ील्ड हो। केवल ASCII अक्षरों का हेडर कई एन्कोडिंग में सही दिख सकता है, इसलिए उससे बाकी फ़ाइल की पुष्टि नहीं होती।

तुलना के लिए छोटा नमूना रखना

उदाहरण वाली टेस्ट फ़ाइल में तीन फ़ील्ड रखें: नाम, कोड और टिप्पणी। नाम 李明, कोड 001234 और टिप्पणी कोई छोटा चीनी वाक्यांश हो सकता है। यह परीक्षण सामग्री है, किसी वास्तविक ग्राहक का रिकॉर्ड नहीं। अपेक्षित टेक्स्ट फ़ाइल के साथ रखें ताकि हर आयात या निर्यात के बाद उन्हीं मानों की तुलना हो सके।

यदि किसी फ़ील्ड में फ़ाइल का विभाजक या भीतर की नई पंक्ति हो, तो CSV लिखने वाले प्रोग्राम को उसे सही उद्धरण चिह्नों में रखना चाहिए। इसलिए टेक्स्ट की पंक्तियों की संख्या हमेशा रिकॉर्ड की संख्या नहीं होती: उद्धरणों में बंद सेल में नई पंक्ति हो सकती है। निर्यात जाँचते समय वास्तविक रूप से पार्स की गई पंक्तियाँ और कॉलम मिलाएँ; दिखाई देने वाली पंक्तियों की संख्या उचित लगने भर से फ़ाइल को पूरा न मानें।

UTF-8 में बदलने के बाद नई फ़ाइल को स्पष्ट रूप से UTF-8 चुनकर खोलें और नमूना मानों की तुलना करें। फिर उस अनुप्रयोग में आयात जाँचें जो वास्तव में फ़ाइल प्राप्त करेगा। सही एन्कोडिंग वाली फ़ाइल भी ऐसा विभाजक या कॉलम क्रम इस्तेमाल कर सकती है जो प्राप्तकर्ता की प्रक्रिया को स्वीकार न हो।

अगले चरण के लिए आउटपुट चुनना

BOM वाला UTF-8 कुछ Excel प्रत्यक्ष-ओपन प्रक्रियाओं में उपयोगी है क्योंकि पहचान चिह्न एन्कोडिंग समझने में मदद करता है। कोई दूसरा आयातक बिना BOM वाला UTF-8 चाह सकता है। कोई एक विकल्प हर स्थिति में बेहतर नहीं है; अगले अनुप्रयोग द्वारा बताया फ़ॉर्मैट लें और उसी प्रतिनिधि नमूने से जाँचें।

BOM उस टेक्स्ट को ठीक नहीं करता जिसे निर्यात से पहले ही गलत डिकोड किया गया था। यदि पूर्वावलोकन में गलत अक्षर हैं, तो सहेजने से पहले रुकें और स्रोत एन्कोडिंग सुधारें। गलत अक्षरों में UTF-8 पहचान जोड़ने से केवल एक नई फ़ाइल बनेगी जिसमें गलत टेक्स्ट अब भी रहेगा।

यदि फ़ॉर्मूले, कई शीट, सेल स्टाइल या जटिल स्प्रेडशीट संरचना सुरक्षित रखनी है, तो CSV वर्कबुक का विकल्प नहीं है। इन सुविधाओं की ज़रूरत हो तो वर्कबुक को कामकाजी दस्तावेज़ बनाए रखें और केवल विशेष डेटा हस्तांतरण चरण के लिए CSV निर्यात करें। टेक्स्ट रूपांतरण सफल होने का मतलब सभी स्प्रेडशीट सुविधाएँ बचना नहीं है।

खो चुकी जानकारी पहचानना

यदि सहेजी फ़ाइल में चीनी टेक्स्ट की जगह पहले से प्रतिस्थापन अक्षर या साधारण प्रश्न चिह्न हों, तो दूसरी एन्कोडिंग चुनने से मूल टेक्स्ट वापस न आए। बिना बदले मूल पर लौटें या नया निर्यात माँगें। कन्वर्टर मौजूद बाइट को फिर से समझ सकता है; वह ऐसा टेक्स्ट दोबारा नहीं बना सकता जो ओवरराइट होकर अब बचा ही नहीं है।

टिप्पणियाँ

लोड हो रहा है…

अभी कोई टिप्पणी नहीं है।