2011-05-19 12 views
22

मेरे पास खींचने योग्य/संपत्ति फ़ोल्डर में एक CSV फ़ाइल है। सीएसवी फ़ाइल में चार कॉलम हैं। पहला एक तारीख के लिए है और बाकी तीन पूर्णांक डेटा के लिए हैं।एंड्रॉइड एप्लिकेशन में सीएसवी फ़ाइल को कैसे पार्स करें?

मुझे इस सीएसवी फ़ाइल को पार्स करने और डेटा को अलग-अलग सरणी में सहेजने की आवश्यकता है।

मैंने एक समाधान की खोज की है, लेकिन मुझे यह कैसे करना है इस पर उचित विचार नहीं है। https://mvnrepository.com/artifact/net.sf.opencsv/opencsv/2.3

बस अपनी परियोजना में जोड़ें:

+0

यह मदद मिल सकती है आप संभोग: http://stackoverflow.com/questions/5360628/get-and-parse-csv-file-in-android – necixy

उत्तर

33

मैं इस सीएसवी पाठक पसंद है।

उदाहरण कोड (यह मानते हुए फ़ाइल आस्तियों/test.csv है):

 String next[] = {}; 
     List<String[]> list = new ArrayList<String[]>(); 

     try { 
      CSVReader reader = new CSVReader(new InputStreamReader(getAssets().open("test.csv"))); 
      while(true) { 
       next = reader.readNext(); 
       if(next != null) { 
        list.add(next); 
       } else { 
        break; 
       } 
      } 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

आप उदाहरण के लिए, के साथ आयातित डेटा का उपयोग कर सकते हैं,

list.get(1)[1] 

कि एक स्ट्रिंग लौट आते हैं।

+0

प्रक्रिया को दोहराने के लिए जब मैं पिछले पर तक पहुंचने .... –

+0

@PratikButani 'के लिए (;;) 'ऐसा करता है, ताकि आप उस लूप के बाद इसे फिर से कर सकें, आप – chwi

+0

CSVReader अन्य CSV पार्सिंग समाधानों की कोशिश करने के बाद मेरे लिए काम किया है। मुझे आश्चर्य है कि अच्छा सीएसवी पार्सिंग समाधान को लागू करना मुश्किल है। मेरे मामले में मुझे बहुभाषियों से निपटना पड़ा, और यह एकमात्र फाइल है जिसने इसे काम किया है। – zeeshan

संबंधित मुद्दे