当前位置:编程学习 > JAVA >>

读取TXT文件的问题,请教各位大神

txt文件里面有5列,
比如
小明 20 北京 电话 1990
我现在想读出其中的两列 小明 和1990请问下用什么方法?在下刚学JAVA一个月,说的不专业的地方勿喷。。 java --------------------编程问答-------------------- 除非你txt里面的内容格式全部固定。不然木有很好的办法。。假设你的格式是固定的,以你给的数据为例
懒得写了,给你例子吧?
http://www.cnblogs.com/qingblog/archive/2012/07/06/2579404.html --------------------编程问答-------------------- 可以每次读一行,然后处理字符串。
字符串处理应该不难吧?split什么的。 --------------------编程问答--------------------
引用 2 楼 abc41106 的回复:
可以每次读一行,然后处理字符串。
字符串处理应该不难吧?split什么的。


+1
--------------------编程问答--------------------
引用 3 楼 dongdong406 的回复:
引用 2 楼 abc41106 的回复:可以每次读一行,然后处理字符串。
字符串处理应该不难吧?split什么的。

+1

可以使用定位流来读特定的地方。
当然这么短的话是用不到的。
还是全读出来用正则截取一下比较合适 --------------------编程问答--------------------
引用 4 楼 AA5279AA 的回复:
引用 3 楼 dongdong406 的回复:
引用 2 楼 abc41106 的回复:可以每次读一行,然后处理字符串。
字符串处理应该不难吧?split什么的。

+1
可以使用定位流来读特定的地方。
当然这么短的话是用不到的。
还是全读出来用正则截取一下比较合适


正解,不过后一种方法常用,前一种没用过,楼主可以尝试下,好用的话分享一下
--------------------编程问答-------------------- import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

public class ReadTxtFile {
/**
 * @param args
 * @throws IOException
 */
public static void main(String[] args)   {
try {
String encoding = "GBK";  
File file = new File("D:/a.txt");
if (file.isFile() && file.exists()) {
InputStreamReader read = new InputStreamReader(new FileInputStream(file), encoding);
BufferedReader bufferedReader = new BufferedReader(read);
String lineTXT = null;
while ((lineTXT = bufferedReader.readLine()) != null) {
String a ,b ,c,d,e;
String[] str = lineTXT.split(" ");//按空格拆分
//可以将a,b,c,d 放到你说设计的类属性中,想读哪个就读哪个
a = str[0]; 
b =str[1]; 
c = str[2]; 
d = str[3];
e=str[4];
System.out.println(a+";"+b+";"+c+";"+d +";"+e);
}
read.close();
} else {
System.out.println("找不到指定的文件");
}
} catch (Exception e) {
e.printStackTrace();
}
}

}
--------------------编程问答-------------------- 你的列之间有空格,读取成功之后,将读取的字符串以空格分开。即result.split(" ");然后按数组位置取出你要的值。
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,