我怎样才能获得.csv文件的数据?

时间:2011-12-05 17:25:04

标签: java android csv

  

可能重复:
  how to use .csv file in android?

我创建了一个示例Android应用程序,在此我使用.csv文件来存储数据。我将此文件放在 assetsfolder

在我的.csv文件中包含,

1   Indonesia   Jakarta Phnom Penh  New Delhi
2   Bosnia  Pristina    Sarajevo    Prague
3   Germany Frankfurt   Bonn    Berlin
4   Kenya   Kinshasa    Nairobi Pretoria
5   Colombia    Lima    Buenos Aires    Bogota

如何使用java代码获取.csv文件的值..

2 个答案:

答案 0 :(得分:1)

您需要逐行读取文件,并用separtor分割每一行。

基本上是这样的:

try {
  File f = new File("yourpath");
  BufferedReader b = new BufferedReader( new FileReader( f ) ) );
  String line = null;
  while ( (line = b.readLine() ) != null ) {
    String[] cells = line.split( "\t" );  //assuming the separator is a tab
    //do whatever you want, e.g. collect the arrays into a list etc.
  }
} catch( IOException e) {
  //do whatever is appropriate  
}

答案 1 :(得分:0)

使用StringTokenizer解析这样的文件非常简单。

让我们假设您已打开文件,并且您一次只读一行。要将字符串分解为令牌,每个令牌代表一个单词,您可以执行以下操作:

String lineOfText; // This contains the current line of text
StringTokenizer st = new StringTokenizer(input, ", "); // ' ' and ',' are use as delimiters to break up the line into individual tokens

ArrayList<String> words = new ArrayList<String>     
while(st.hasMoreElements())
     words.add(st.nextToken());

这将为您提供一个数组列表,其中单个单词作为列表的元素