java读取多行txt文件

importjava.io.BufferedReader;importjava.io.File;importjava.io.FileReader;importjava.u... import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.List;
public class Test5 {
public static String[] writeToDat(String path) throws Exception {
File file = new File(path);
List list = new ArrayList();
BufferedReader bw = new BufferedReader(new FileReader(file));
String line = null;
while ((line = bw.readLine()) != null) {
list.add(line);
}
bw.close();
String result=null;
String[] nums=null;
for (int i = 0; i < list.size(); i++) {
result = (String) list.get(i);
nums[i]=result;
}
return nums;
}
public static void main(String[] args) throws Exception {
String path = "e:/test.txt";
String[] nums = writeToDat(path);
for(int i=0;i<nums.length;i++){
System.out.println(nums[i]);
}
}
}
求解这个类怎么修改
展开
 我来答
198901245631
推荐于2016-03-16 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1737万
展开全部
可以通过BufferedReader 流的形式进行读取,之后循环输出每一行的内容。
BufferedReader bre = null;
try {
bre = new BufferedReader(new FileReader(file));//file为文件的路径+文件名称+文件后缀
while ((str = bre.readLine())!= null) // ●判断最后一行不存在,为空结束循环
{
System.out.println(str);//原样输出读到的内容
};
备注: 流用完之后必须close掉,如上面的就应该是:bre.close();
jesselov
2012-08-31
知道答主
回答量:18
采纳率:0%
帮助的人:8.1万
展开全部
public static String[] writeToDat(String path) throws Exception {
File file = new File(path);
List<String> list = new ArrayList<String>();
BufferedReader bw = new BufferedReader(new FileReader(file));
String line = null;
while ((line = bw.readLine()) != null) {
list.add(line);
}
bw.close();
String[] nums=new String[list.size()];
String result=null;
for (int i = 0; i < list.size(); i++) {
result = list.get(i);
nums[i]=result;
}
return nums;
}
就可以了!
String[] nums=null;

下面的
nums[i]=result;

不能赋值的。如果要赋值涉及到数组的扩容。
好好学习
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yo...e@163.com
2012-08-30 · 超过11用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:26.1万
展开全部
String[] nums=null;这里,nums为null。
你已经放到list里面了,不知道你为啥还要用个数组。
如果你确实要用,你可以用String[] nums=new String[list.size()];
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hanshuang1221
2012-08-31
知道答主
回答量:12
采纳率:0%
帮助的人:3.9万
展开全部
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static Object[] writeToDat(String path) throws Exception {
File file = new File(path);
List<String> list = new ArrayList<String>();
BufferedReader bw = new BufferedReader(new FileReader(file));
String line = "";
while ((line = bw.readLine()) != null) {
list.add(line);
}
bw.close();
String result = "";

Object[] nums = list.toArray();;
return nums;
}
public static void main(String[] args) throws Exception {
String path = "e:/test.txt";
Object[] nums = writeToDat(path);
for (int i = 0; i < nums.length; i++) {
System.out.println(nums[i].toString());
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zn85600301
2012-08-30 · TA获得超过123个赞
知道小有建树答主
回答量:403
采纳率:0%
帮助的人:142万
展开全部
正如楼上说的 加上编码设置就更好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式