我有一个 CVS 文件。我希望我的 android 应用程序能够读取它并在 textview 中显示它。你能给我一个例子吗?
问问题
278 次
2 回答
0
很久以前我已经做了这些方法,因为 Scanner 不适合我:
public ArrayList<String> readFileLines(File file)
{
ArrayList<String> lines = new ArrayList<String>();
String line;
BufferedReader br = null;
try
{
br = new BufferedReader(new FileReader(file));
while ( (line = br.readLine()) != null)
{
lines.add(line);
}
}
catch (Exception e )
{
System.out.println("Cannot open file to read: " + e);
}
finally
{
try
{
br.close();
}
catch (IOException ex)
{
System.out.println("Cannot close file after saving: " + ex);
}
}
return lines;
}
用法:
for (String line: readFileLines(new File("file.csv")))
{
String[] values = line.split(";");
// values[0] would be first value of line, values[1] would be second etc.
}
于 2012-12-04T19:11:45.100 回答
0
您可以使用扫描仪:
Scanner scanner = new Scanner(new File("file.csv");
String s = "";
while(scanner.hasNextLine());
s+=scanner.nextLine();
String[] values = s.split(",");
这是一个 2n 的过程,如果你想用 substring 到处乱搞,你可能会把它降到 n
这里是将它添加到 textview
for(int i = 0; i < values.length; i++){
TextView t = new TextView(getApplicationContext());
t.setText(values[i]);
layout.addView(t);
}
您可以在 xml 中添加布局,也可以使用 setContentView(layout); 在代码本身中添加布局;
您也可以通过执行来使用布局参数
YourLayoutType.layoutParams params = new YourLayoutType.layoutParams(LayoutParams.whatLayoutTypeYouWant, LayoutParams.whatLayoutTypeYouWant); //(it goes width, height).
然后将它们用于您的布局
layout.setLayoutParams(params);
注意:所有这些代码都应该在活动代码文件中。
于 2012-12-04T17:49:48.597 回答