【发布时间】:2011-11-09 16:01:10
【问题描述】:
我正在尝试从另一个 Activity 中生成的文本文件中导入文本。生成的文本文件由一个String ArrayList 组成,其中仅包含数字和Android 生成的其他随机文本。当我从文件中导入文本时,我使用BufferedReader 和readLine() 将每个新数字放入Integer ArrayList。我正在从文本文件中删除任何非数字值,并且在另一个 Activity 中生成的数字由“\n”分隔。
我面临的问题是 Android 在加载 Activity 时崩溃。我已将原因缩小到Integer.parseInt()。
我的代码如下:
ArrayList<Integer> lines = new ArrayList<Integer>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
File file = new File(getFilesDir(), "test_file.txt");
try {
BufferedReader br = new BufferedReader(new FileReader(file));
while (br.readLine() != null) {
String text = (br.readLine()).replaceAll("[^0-9]+","").trim();
Integer number = Integer.parseInt(text);
lines.add(number);
}
} catch (IOException e) {
}
TextView tv = (TextView) findViewById(R.id.helptext);
int max = 0, min = 100;
double total = 0;
for (int i = 0; i < lines.size(); i++) {
int number = lines.get(i);
max = Math.max(max, number);
min = Math.min(min, number);
total += number;
}
tv.setText("max = " + max + " min = " + min + " total = "
+ total);
【问题讨论】:
标签: java android arrays parseint