java 怎么读文件中的一行数据 存到数组中

小鱼的梦 2012-03-26 03:25:00
请教一个问题:java 怎么读文件中的一行数据 存到数组中

要读的是txt文件
我截了一行 格式如下

1545 2034 2578 1582 1495 454 2142 825 842 2405 3098 2872 3093 631 3225 1393 3378 715 2972 513

每行20个数字,中间用空格隔开的,

想要读取出来,把这20个数存到int类型的数组list[20]中
...全文
927 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
liaomin416100569 2012-03-27
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 abstruct 的回复:]

仅供参考:
Java code

public static void main(String[] arg) throws Exception{
BufferedReader reader = new BufferedReader(new FileReader(""));
List<Integer> values = new ArrayList<Int……
[/Quote]

正解
有人写 我就不写了
Payden 2012-03-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 flagiris 的回复:]
Java code


public static void main(String[] arg) throws Exception {
BufferedReader reader = new BufferedReader(new FileReader("E:/test.txt"));
int[] list = new int[20];
……
[/Quote]
正解
老9 2012-03-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 abstruct 的回复:]
仅供参考:

Java code

public static void main(String[] arg) throws Exception{
BufferedReader reader = new BufferedReader(new FileReader(""));
List<Integer> values = new ArrayList……
[/Quote]
正解。。。
五哥 2012-03-26
  • 打赏
  • 举报
回复
while ((line = reader.readLine()) != null) {
String[] vStrs = line.split(" ");

System.out.println("-------打印出来,看拆分了几段----:" + vStrs.length) ;
//应该大于 20 了
for (String str : vStrs) {
list[i++] = Integer.parseInt(str);
}
}
小鱼的梦 2012-03-26
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 vampiresme 的回复:]

引用 4 楼 flagiris 的回复:

Java code

public static void main(String[] arg) throws Exception {
BufferedReader reader = new BufferedReader(new FileReader("E:/test.txt"));
int[] list = new int[20];
i……
[/Quote]
哦 好了 能运行了
小鱼的梦 2012-03-26
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 flagiris 的回复:]

Java code

public static void main(String[] arg) throws Exception {
BufferedReader reader = new BufferedReader(new FileReader("E:/test.txt"));
int[] list = new int[20];
i……
[/Quote]
有个错误:
java.lang.ArrayIndexOutOfBoundsException
菖蒲老先生 2012-03-26
  • 打赏
  • 举报
回复

public static void main(String[] arg) throws Exception {
BufferedReader reader = new BufferedReader(new FileReader("E:/test.txt"));
int[] list = new int[20];
int i = 0;
String line = null;
while ((line = reader.readLine()) != null) {
String[] vStrs = line.split(" ");
for (String str : vStrs) {
list[i++] = Integer.parseInt(str);
}
}
System.out.println(Arrays.toString(list));
}
安特矮油 2012-03-26
  • 打赏
  • 举报
回复
仅供参考:

public static void main(String[] arg) throws Exception{
BufferedReader reader = new BufferedReader(new FileReader(""));
List<Integer> values = new ArrayList<Integer>();
while(true){
String line = reader.readLine();
if(line == null){
break;
}
String[] vStrs = line.split("\\s+");
for(String str : vStrs){
values.add(Integer.valueOf(str));
}
}

int[] array = new int[values.size()];
int i = 0;
for(Integer v : values){
array[i++] = v;
}
}
成一粒 2012-03-26
  • 打赏
  • 举报
回复
java IO操作。你看看书上都有的。
宏Lee 2012-03-26
  • 打赏
  • 举报
回复
你可以使用StringBuffer,把所有的数据读数来,然后转化为String,调用String的split(" 空格")就OK

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧