पसंदीदा पार्सर के साथ CSV फ़ाइलें खोलना

परिचय

CSV फ़ाइलों से निपटते समय, कभी-कभी आप कस्टम पार्सर के साथ अलग-अलग डेटा प्रकारों को संभालना चाहते हैं। यह ट्यूटोरियल आपको .NET के लिए Aspose.Cells का उपयोग करके पसंदीदा पार्सर के साथ CSV फ़ाइलों को खोलने के तरीके के बारे में मार्गदर्शन करेगा। चाहे आप टेक्स्ट, तिथियाँ या अन्य कस्टम फ़ॉर्मेट को संभालना चाहते हों, यह गाइड आपको स्पष्ट व्याख्या के साथ प्रत्येक चरण से गुज़रने में मदद करेगा।

आवश्यक शर्तें

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

  1. Aspose.Cells for .NET लाइब्रेरी: सुनिश्चित करें कि आपके पास Aspose.Cells लाइब्रेरी स्थापित है। आप इसे डाउनलोड कर सकते हैंयहाँ . आप निःशुल्क परीक्षण का भी उपयोग कर सकते हैंयहाँ.
  2. .NET विकास वातावरण: विजुअल स्टूडियो की अनुशंसा की जाती है, लेकिन कोई भी .NET-संगत IDE काम करेगा।
  3. C# का बुनियादी ज्ञान: यह ट्यूटोरियल मानता है कि आप C# और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग से परिचित हैं।

पैकेज आयात करें

Aspose.Cells का उपयोग करने के लिए, आपको अपनी C# फ़ाइल के शीर्ष पर आवश्यक नामस्थान आयात करने होंगे:

using System.IO;
using Aspose.Cells;
using System;

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

चरण 1: कस्टम पार्सर्स परिभाषित करें

अलग-अलग डेटा टाइप, जैसे टेक्स्ट या खास डेट फॉर्मेट को हैंडल करने के लिए, आपको कस्टम पार्सर को परिभाषित करने की जरूरत होती है। Aspose.Cells में, कस्टम पार्सर लागू करते हैंICustomParser इंटरफ़ेस.

1.1 टेक्स्ट पार्सर बनाएँ

यह पार्सर नियमित टेक्स्ट मानों को संभालता है। यह प्रारूप को संशोधित नहीं करता है, इसलिए मान को वैसे ही लौटाया जाता है।

class TextParser : ICustomParser
{
    public object ParseObject(string value)
    {
        return value;
    }
    public string GetFormat()
    {
        return "";
    }
}

ParseObject विधि केवल इनपुट मान लौटाती है। यह ऐसा है जैसे कह रही हो, “कुछ भी मत बदलो, बस मुझे टेक्स्ट दे दो!”

1.2 दिनांक पार्सर बनाएँ

तारीखों के लिए, आप यह सुनिश्चित करना चाहेंगे कि CSV डेटा सही तरीके से पार्स किया गया होDateTime ऑब्जेक्ट्स। यहां बताया गया है कि आप दिनांक पार्सर कैसे बना सकते हैं:

class DateParser : ICustomParser
{
    public object ParseObject(string value)
    {
        DateTime myDate = DateTime.ParseExact(value, "dd/MM/yyyy", 
            System.Globalization.CultureInfo.InvariantCulture);
        return myDate;
    }
    public string GetFormat()
    {
        return "dd/MM/yyyy";
    }
}

इस पार्सर में, हम उपयोग करते हैंParseExact यह सुनिश्चित करने के लिए कि पूर्वनिर्धारित प्रारूप के आधार पर तारीख की सही व्याख्या की गई है ("dd/MM/yyyy"इस तरह, इस प्रारूप में आपकी CSV में मौजूद कोई भी तारीख बिना किसी समस्या के संसाधित हो जाएगी।

चरण 2: लोड विकल्प कॉन्फ़िगर करें

इसके बाद, आपको CSV फ़ाइल को लोड करने का तरीका कॉन्फ़िगर करना होगा। यह काम करने के लिएTxtLoadOptions क्लास, जो आपको एन्कोडिंग और कस्टम पार्सर्स सहित पार्सिंग विकल्प निर्दिष्ट करने की अनुमति देता है।

2.1 लोड विकल्प सेट करें

हम आरंभीकरण से शुरुआत करेंगेTxtLoadOptions और विभाजक और एन्कोडिंग जैसे प्रमुख मापदंडों को परिभाषित करना:

TxtLoadOptions oTxtLoadOptions = new TxtLoadOptions(LoadFormat.Csv);
oTxtLoadOptions.Separator = Convert.ToChar(",");
oTxtLoadOptions.Encoding = Encoding.UTF8;
oTxtLoadOptions.ConvertDateTimeData = true;
  • विभाजक: यह CSV फ़ाइल में मानों को अलग करने के लिए प्रयुक्त वर्ण को परिभाषित करता है (इस मामले में अल्पविराम)।
  • एनकोडिंग: हम वर्णों की एक विस्तृत श्रृंखला को संभालने के लिए UTF-8 एनकोडिंग का उपयोग करते हैं।
  • ConvertDateTimeData: इसे true पर सेट करने से यह सुनिश्चित होता है कि दिनांक मान स्वचालित रूप से परिवर्तित हो जाएंगेDateTime जब भी संभव हो वस्तुओं का प्रयोग करें।

2.2 कस्टम पार्सर्स लागू करें

इसके बाद, हम पहले बनाए गए पार्सर्स को CSV में मानों को संभालने के लिए असाइन करेंगे:

oTxtLoadOptions.PreferredParsers = new ICustomParser[] 
{ 
    new TextParser(), 
    new DateParser() 
};

यह Aspose.Cells को उपयोग करने के लिए कहता हैTextParser सामान्य पाठ मानों औरDateParserCSV फ़ाइल में मिलने वाली किसी भी दिनांक फ़ील्ड के लिए.

चरण 3: CSV फ़ाइल लोड करें और पढ़ें

अब चूंकि लोड विकल्प कॉन्फ़िगर हो गए हैं, आप CSV फ़ाइल को किसी फ़ाइल में लोड कर सकते हैं.Aspose.Cells.Workbook वस्तु।

3.1 CSV फ़ाइल लोड करें

हम फ़ाइल पथ और कॉन्फ़िगर किए गए फ़ाइल नाम को पास करके CSV फ़ाइल लोड करते हैं।TxtLoadOptions तकWorkbook निर्माता:

string sourceDir = "Your Document Directory";
Workbook oExcelWorkBook = new Aspose.Cells.Workbook(sourceDir + "samplePreferredParser.csv", oTxtLoadOptions);

यह चरण आपके CSV डेटा को पूर्णतः कार्यात्मक Excel कार्यपुस्तिका में परिवर्तित कर देता है, जिसमें प्रत्येक मान को आपके पसंदीदा नियमों के अनुसार पार्स किया जाता है।

चरण 4: सेल डेटा तक पहुंचें और प्रदर्शित करें

CSV को वर्कबुक में लोड करने के बाद, आप डेटा के साथ काम करना शुरू कर सकते हैं। उदाहरण के लिए, आप विशिष्ट सेल के प्रकार और मान को प्रिंट करना चाह सकते हैं।

4.1 सेल A1 को पुनः प्राप्त करें और प्रदर्शित करें

आइए पहले सेल (A1) को पुनः प्राप्त करें और उसका मान और प्रकार प्रदर्शित करें:

Cell oCell = oExcelWorkBook.Worksheets[0].Cells["A1"];
Console.WriteLine("A1: " + oCell.Type.ToString() + " - " + oCell.DisplayStringValue);

यहाँ,Type प्रॉपर्टी डेटा प्रकार दिखाती है (जैसेString याDateTime ), औरDisplayStringValue आपको स्वरूपित मान देता है.

4.2 सेल B1 को पुनः प्राप्त करें और प्रदर्शित करें

इसी प्रकार, हम किसी अन्य सेल को पुनः प्राप्त कर सकते हैं और प्रदर्शित कर सकते हैं, जैसे B1:

oCell = oExcelWorkBook.Worksheets[0].Cells["B1"];
Console.WriteLine("B1: " + oCell.Type.ToString() + " - " + oCell.DisplayStringValue);

इस प्रक्रिया को आप उतनी कोशिकाओं के लिए दोहरा सकते हैं, जितनी आपको जांच करनी है।

चरण 5: कार्यपुस्तिका सहेजें

डेटा के साथ काम करने के बाद, आप वर्कबुक को एक नई फ़ाइल में सहेजना चाह सकते हैं। Aspose.Cells एक सरल तरीके से इसे आसान बनाता हैSave तरीका:

string outputDir = "Your Document Directory";
oExcelWorkBook.Save(outputDir + "outputsamplePreferredParser.xlsx");

यह कार्यपुस्तिका को एक एक्सेल फ़ाइल के रूप में सहेजता है, तथा आपके द्वारा लागू किए गए सभी स्वरूपण और डेटा पार्सिंग को संरक्षित रखता है।

निष्कर्ष

Aspose.Cells for .NET में पसंदीदा पार्सर के साथ CSV फ़ाइलें खोलना विभिन्न डेटा प्रकारों को संभालने का एक लचीला और शक्तिशाली तरीका है। कस्टम पार्सर बनाकर और लोड विकल्पों को कॉन्फ़िगर करके, आप यह सुनिश्चित कर सकते हैं कि आपकी CSV फ़ाइलें ठीक उसी तरह पार्स की जाएँ, जैसा आपको चाहिए, चाहे आप टेक्स्ट, तिथियों या अन्य कस्टम फ़ॉर्मेट के साथ काम कर रहे हों। इस ट्यूटोरियल के साथ, अब आप अपनी परियोजनाओं में अधिक जटिल डेटा पार्सिंग परिदृश्यों को संभालने के लिए सुसज्जित हैं।

अक्सर पूछे जाने वाले प्रश्न

.NET के लिए Aspose.Cells में कस्टम पार्सर्स का उद्देश्य क्या है?

कस्टम पार्सर्स आपको यह परिभाषित करने की अनुमति देते हैं कि CSV फ़ाइल लोड करते समय विशिष्ट डेटा प्रकार, जैसे टेक्स्ट या दिनांक, को कैसे पार्स किया जाना चाहिए।

क्या मैं CSV फ़ाइल में किसी भिन्न विभाजक वर्ण का उपयोग कर सकता हूँ?

हां, आप किसी भी वर्ण को विभाजक के रूप में निर्दिष्ट कर सकते हैंTxtLoadOptions.Separator संपत्ति।

CSV लोड करते समय मैं Aspose.Cells में एन्कोडिंग को कैसे संभालूँ?

आप सेट कर सकते हैंEncoding की संपत्तिTxtLoadOptions किसी भी एनकोडिंग योजना जैसे UTF-8, ASCII, आदि के लिए।

यदि CSV में दिनांक प्रारूप भिन्न हो तो क्या होगा?

आप कस्टम पार्सर का उपयोग करके विशिष्ट दिनांक प्रारूप निर्धारित कर सकते हैं, जिससे दिनांक मानों की सही पार्सिंग सुनिश्चित हो सके।

क्या मैं कार्यपुस्तिका को अन्य प्रारूपों में सहेज सकता हूँ?

हां, Aspose.Cells आपको कार्यपुस्तिका को विभिन्न प्रारूपों जैसे XLSX, CSV, PDF, आदि में सहेजने की अनुमति देता है।