解析要导入到安卓应用的 CSV 文件



我正在使用安卓应用程序导入 csv 文件以填充我的数据库。

我正在使用OpenCSV库来做到这一点。我希望使用 CSV 阅读器从输入流中读取。

我正在使用来自 gmail 的导入功能,所以我使用android:scheme=content 它使CSV文件成为InputStream

里面我有 3 列。某些行具有,字符。

因此,当我尝试使用,分隔列时,出现错误。

我希望帮助知道如何克服列内的逗号问题。

您可以使用另一个分隔符获取 csv? 如果是,您可以使用此分隔符从 de docs 调用 yor csv 阅读器...

    CSVReader(Reader reader, char separator)
       Constructs CSVReader with supplied separator.

如果列中有逗号,则很难正确读取csv文件,我将向您展示不需要任何库的代码:

   File f=new File("C:/Users/Public/"+filename+".csv");             
            Scanner sc=new Scanner(fc);
            sc.useDelimiter("r");
            char cd='"';
            //Create scanner string seperator ","
            String g=String.valueOf(cd)+","+String.valueOf(cd);
            //JOptionPane.showMessageDialog(null, "G: "+g);
            String[] data=null;
            while(sc.hasNextLine()){
                data=null;
                csvtemp=sc.nextLine().toString();
            //remove first character ", string from second character                    
                csvtemp=csvtemp.subString(1);
                //remove last character ", string from first character to secondlast
                csvtemp=csvtemp.subString(0,csvtemp.length()-1);
                //Split record by seperator ","  and copy to array
                data=csvtemp.split(g);
            }   

            sc.close();

相关内容

  • 没有找到相关文章

最新更新