मेरे पास एक बड़ी .csv
फ़ाइल (लगभग 300 एमबी) है, जो रिमोट होस्ट से पढ़ी जाती है, और एक लक्षित फ़ाइल में पार्स की जाती है, लेकिन मुझे सभी पंक्तियों को लक्ष्य फ़ाइल में कॉपी करने की आवश्यकता नहीं है। प्रतिलिपि करते समय, मुझे स्रोत से प्रत्येक पंक्ति को पढ़ने की आवश्यकता है और यदि यह कुछ अनुमानित करता है, तो लक्ष्य फ़ाइल में पंक्ति जोड़ें।मैं CSVParser के माध्यम से एक बड़ी फ़ाइल को कैसे संसाधित कर सकता हूं?
मुझे लगता है कि अपाचे सीएसवी (apache.commons.csv
) केवल पूरी फ़ाइल
CSVFormat csvFileFormat = CSVFormat.EXCEL.withHeader();
CSVParser csvFileParser = new CSVParser("filePath", csvFileFormat);
List<CSVRecord> csvRecords = csvFileParser.getRecords();
पार्स कर सकते हैं तो मैं BufferedReader
उपयोग नहीं कर सकते। मेरे कोड के आधार पर, new CSVParser()
उदाहरण प्रत्येक पंक्ति के लिए बनाया जाना चाहिए, जो अक्षम दिखता है।
उपरोक्त मामले में मैं एक पंक्ति (तालिका के ज्ञात शीर्षलेख के साथ) कैसे पार्स कर सकता हूं?