java 按行读取txt文件的数字

文件file4。txt中(数据是按行排列的,每行一个数值)123490.778.8456787.365.6现在要建立一个数组double类型,把file4中所有的数字都写... 文件file4。txt中(数据是按行排列的,每行一个数值)
1234
90.7
78.8
4567
87.3
65.6
现在要建立一个数组double类型,把file4中所有的数字都写入到这个数组中,请问该怎么编写,谢谢。
展开
 我来答
百度网友8a2005d
推荐于2016-02-10 · 知道合伙人互联网行家
百度网友8a2005d
知道合伙人互联网行家
采纳数:121 获赞数:1719
研究生期间做数据挖掘工作。在公司实习一年以上。

向TA提问 私信TA
展开全部

可以通过Java的IO流实现txt文本的读取,然后用readline实现按行读取。具体代码如下:

package test;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Test {
 public static double[] writeToDat(String path) {
  File file = new File(path);
  List list = new ArrayList();
  double[] nums = null;
  try {
   BufferedReader bw = new BufferedReader(new FileReader(file));
   String line = null;
   //因为不知道有几行数据,所以先存入list集合中
   while((line = bw.readLine()) != null){
    list.add(line);
   }
   bw.close();
  } catch (IOException e) {
   e.printStackTrace();
  }
  //确定数组长度
  nums = new double[list.size()];
  for(int i=0;i<list.size();i++){
   String s = (String) list.get(i);
   nums[i] = Double.parseDouble(s);
  }
  return nums;
 }
 public static void main(String[] args) {
  String path = "d:/file4.txt";
  double[] nums = writeToDat(path);
  for(int i=0;i<nums.length;i++){
   System.out.println(nums[i]);
  }
 }
}
coolrapist
推荐于2017-11-23 · TA获得超过590个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:113万
展开全部
package test;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Test {

public static double[] writeToDat(String path) {
File file = new File(path);
List list = new ArrayList();
double[] nums = null;
try {
BufferedReader bw = new BufferedReader(new FileReader(file));
String line = null;
//因为不知道有几行数据,所以先存入list集合中
while((line = bw.readLine()) != null){
list.add(line);
}
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
//确定数组长度
nums = new double[list.size()];
for(int i=0;i<list.size();i++){
String s = (String) list.get(i);
nums[i] = Double.parseDouble(s);
}
return nums;
}

public static void main(String[] args) {

String path = "d:/file4.txt";
double[] nums = writeToDat(path);
for(int i=0;i<nums.length;i++){
System.out.println(nums[i]);
}

}

}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式