हिन्दी

गन्दी CSV फ़ाइल को कैसे साफ़ करें

CSV क्लीनर खोलें और फ़ाइल को ऑटो-डिटेक्ट पर डिलीमीटर के साथ लोड करें। पहले पंक्ति और स्तंभ की संख्या जांचें: यदि स्तंभ संख्या 1 है, तो सीमांकक गलत है, और इसे अर्धविराम या टैब पर सेट करने से आमतौर पर पूरी फ़ाइल ठीक हो जाती है।

फिर डेटा को छूने से पहले पार्सर चेतावनियों पर काम करें, जो विशिष्ट पंक्ति संख्याओं को नाम देते हैं। साफ़ करें, फिर CSV या JSON के रूप में निर्यात करें। आपके ब्राउज़र में सब कुछ एक वर्कर में चलता है; पंक्तियाँ कभी अपलोड नहीं की जातीं।

निर्यात टूटा हुआ क्यों आता है?

CSV एक प्रारूप के बजाय परंपराओं का एक परिवार है। दो एप्लिकेशन CSV समर्थन का दावा कर सकते हैं और सीमांकक, उद्धरण शैली, पंक्ति समाप्ति और वर्ण एन्कोडिंग के बारे में असहमत हो सकते हैं।

सीमांकक सबसे आम आश्चर्य है. उन देशों में बेचे जाने वाले सॉफ़्टवेयर जो दशमलव विभाजक के रूप में अल्पविराम का उपयोग करते हैं, अक्सर अर्धविराम से अलग की गई फ़ाइलों को निर्यात करते हैं, क्योंकि अल्पविराम पहले से ही व्याप्त है। वे फ़ाइलें अभी भी .csv में समाप्त होती हैं, और एक टूल जो अल्पविराम मानता है, प्रत्येक पंक्ति को एक कॉलम में संक्षिप्त कर देता है।

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

तीन नंबर में निदान

ऑटो-डिटेक्शन प्रत्येक उम्मीदवार सीमांकक के साथ एक नमूना पार्स करता है और सबसे लगातार आयताकार परिणाम देने वाले को चुनता है, यही कारण है कि अर्धविराम से अलग की गई फ़ाइल के उद्धृत फ़ील्ड के अंदर अल्पविराम द्वारा इसे मूर्ख नहीं बनाया जाता है। अधिकांश समय यह सही होता है; पूर्वावलोकन आपको बताता है कि यह कब नहीं है।

  • स्तम्भ गिनती. यदि यह 1 है, तो सीमांकक गलत है। अर्धविराम आज़माएँ, फिर टैब।
  • पंक्ति गिनती. यदि यह अपेक्षा से कहीं अधिक है, तो फ़ाइल में संभवतः उद्धृत नई पंक्तियाँ शामिल हैं कि अपस्ट्रीम में कुछ पहले से ही खराब हो चुका है।
  • चेतावनी गिनती. प्रत्येक चेतावनी एक पंक्ति संख्या का नाम देती है, जिस तरह से एक पाठ एडिटर गिनती करता है, इसलिए आप जा सकते हैं और देख सकते हैं।

चेतावनियाँ पढ़ना

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

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

टूल इन्हें सुधारने के बजाय रिपोर्ट करता है, क्योंकि दोनों मामलों में कई संभावित सही समाधान हैं और केवल आप ही जानते हैं कि कौन सा लागू होता है।

सही क्रम में साफ़ करें

फॉर्मूला-इंजेक्शन-सुरक्षित निर्यात डिफ़ॉल्ट रूप से चालू है और वास्तविक सुरक्षा परिणाम के साथ यहां एक विकल्प है। =, +, - या @ से शुरू होने वाले सेल को स्प्रेडशीट अनुप्रयोगों द्वारा एक सूत्र के रूप में माना जाता है, इसलिए किसी अविश्वसनीय स्रोत से आने वाला मान तब निष्पादित हो सकता है जब कोई आपकी फ़ाइल खोलता है। सुरक्षित निर्यात उन कोशिकाओं को एक एपॉस्ट्रॉफी के साथ उपसर्ग करता है, जो उन्हें गणना करना बंद कर देता है - जिसमें आप गणना करने का इरादा रखते हैं, जो बग के बजाय शमन में निहित है।

  1. पहले रिक्त स्थान को ट्रिम करें. केवल अनुगामी स्थान से भिन्न दो पंक्तियाँ तब तक डुप्लिकेट नहीं होतीं जब तक आप उन्हें ट्रिम नहीं करते।
  2. दूसरी डुप्लिकेट पंक्तियाँ हटाएँ। पहली घटना रखी गई है, इसलिए जीवित रहने का क्रम अपरिवर्तित है।
  3. हेडर का नाम बदलें और निर्यात करने के लिए कॉलम चुनें।
  4. यदि आपको आवश्यकता हो तो क्रमबद्ध करें। संख्यात्मक स्तंभों का पता लगाया जाता है और उन्हें संख्यात्मक रूप से क्रमबद्ध किया जाता है, इसलिए 9 10 से पहले आता है।
  5. डाउनलोड करने से पहले निर्यात विकल्पों की जाँच करें, विशेषकर फ़ॉर्मूला-इंजेक्शन सेटिंग की।

निर्यात एन्कोडिंग का चयन करना

यदि फ़ाइल विंडोज़ पर एक्सेल के लिए नियत है, तो UTF-8 बाइट-ऑर्डर मार्क को चालू करें, जो एन्कोडिंग का पता लगाने के लिए इसका उपयोग करता है; इसके बिना, उच्चारण वाले अक्षर और गैर-लैटिन स्क्रिप्ट डबल-क्लिक पर मोजिबेक के रूप में दिखाई दे सकते हैं।

यदि फ़ाइल किसी स्क्रिप्ट, डेटाबेस आयात या किसी अन्य प्रोग्राम को फीड करती है तो इसे OFF छोड़ दें, क्योंकि कुछ सख्त पार्सर्स मार्क को डेटा के रूप में मानते हैं।

कार्यान्वित उदाहरण: एक 12,000-पंक्ति निर्यात जो एक कॉलम के रूप में खुलता है

यूरोपीय CRM से एक ग्राहक निर्यात आपके एडिटर में 12,000 पंक्तियों और एक एकल कॉलम के रूप में खुलता है। हेडर पंक्ति में नाम; ईमेल; देश; साइन अप तिथि लिखी हुई है।

  1. फ़ाइल लोड करें. स्वत:-पहचान रिपोर्ट 4 कॉलम; यदि ऐसा नहीं होता है, तो सीमांकक को मैन्युअल रूप से अर्धविराम पर सेट करें।
  2. चेतावनियाँ पढ़ें: 418, 2,905 और 7,110 पर 3 रैग्ड पंक्तियाँ कहें।
  3. उन तीन पंक्तियों को देखो. उनमें कंपनी के नाम के अंदर एक खुला अर्धविराम होता है - अतिरिक्त सेल रखे जाते हैं, इसलिए कुछ भी खो नहीं जाता है।
  4. रिक्त स्थान को ट्रिम करें, फिर डुप्लिकेट हटा दें।
  5. सीमांकक के रूप में अल्पविराम और बाइट-ऑर्डर चिह्न के साथ CSV के रूप में निर्यात करें, क्योंकि फ़ाइल एक्सेल का उपयोग करने वाले सहकर्मी के पास जा रही है।

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

टूल खोलें

अपने ब्राउज़र में CSV साफ़ करें

आपके डिवाइस पर एक वेब वर्कर को पार्स करता है, उसे मिलने वाली प्रत्येक सेल को रखता है, और उन समस्याओं की रिपोर्ट करता है जिनका वह अनुमान नहीं लगा पाएगा।

इसमें क्या शामिल नहीं है

  • पूरी फ़ाइल आपकी डिवाइस मेमोरी में रखी जाती है। सीमा 50 MB है, और लैपटॉप की तुलना में फ़ोन अच्छी तरह से संघर्ष करेगा।
  • पूर्वावलोकन में केवल पहली 100 पंक्तियाँ दिखाई जाती हैं, हालाँकि प्रत्येक पंक्ति साफ़ और निर्यात की जाती है।
  • एन्कोडिंग का पता लगाना UTF-8 बाइट-ऑर्डर मार्क तक सीमित है। Windows-1252 या Shift-JIS के रूप में सहेजी गई फ़ाइल को UTF-8 के रूप में पढ़ा जाता है और इसमें प्रतिस्थापन वर्ण दिखाई दे सकते हैं; इसे स्रोत एप्लिकेशन से UTF-8 के रूप में पुनः निर्यात करें।
  • केवल UTF-8 लिखा है. लीगेCAन्कोडिंग का उत्पादन नहीं किया जाता है.
  • कोई मल्टी-शीट समर्थन नहीं है, क्योंकि CSV में शीट की कोई अवधारणा नहीं है।
  • जिस फ़ाइल का उद्धरण पहले से ही भ्रष्ट है, उसकी रिपोर्ट की जाती है, मरम्मत नहीं की जाती।
  • पूर्ववत करना अंतिम 20 ऑपरेशन तक सीमित है।