读取文本文件的问题
我要读取一个文本文件,文件的内容是类似数据库的格式,每行为一条记录有5个字段,要求根据传入的2个参数读取相应记录的后3个字段的值,请问怎么做? 问题点数:30、回复次数:11Top
1 楼cuizm(射天狼 http://www.j2soft.cn/)回复于 2004-09-03 15:51:36 得分 0
问题说明白,传什么参数!?格式说清楚Top
2 楼tjw2003(修炼中的神)回复于 2004-09-03 15:53:40 得分 0
每条记录是这样的格式 20030911,“09342AC2”,00231213,34122212,2320098,传入的参数是前面2个,我要先做判断,如果和某条记录符合的话,就把后面3个字段的值取出来。Top
3 楼haode(好的)回复于 2004-09-03 16:34:03 得分 3
读近来以后转成String,然后用indexOf(",")来分隔判断。如果前两个substring符合的话,就把后面接着截;否则后面的就不要了。Top
4 楼tjw2003(修炼中的神)回复于 2004-09-03 16:51:45 得分 0
是不是一次就读一条记录?用什么类读比较好?Top
5 楼cuizm(射天狼 http://www.j2soft.cn/)回复于 2004-09-03 17:04:56 得分 10
String strTmp = null;
String [] strAry = null;
//FileInputStream fle = new FileInputStream ("test.ini");
BufferedReader br = new BufferedReader (new FileReader ("I:/ProgramsExample/JavaExample/JavaPrj/bin/test.txt"));
while (br.ready())
{
System.out.println (br.ready ());
strTmp = br.readLine();
strAry = strTmp.split(",");
if (strAry [0].equals("20030911") && strAry [1].equals("“09342AC2”"))
{
System.out.println (strAry [2] + "," + strAry [3] + "," + strAry [4]);
}
}
Top
6 楼cuizm(射天狼 http://www.j2soft.cn/)回复于 2004-09-03 17:06:10 得分 2
只是给你提供个思路,比较的时候你用args [0] 和 args [1]分别表示两上参数就可以了。
另外你给的文件格式中有问题,第一个是用全角逗号分隔的,其他是半角逗号分隔的,需要改成一至的!!Top
7 楼snap2008cn(过年换工作)回复于 2004-09-03 23:21:27 得分 0
狼兄真是热心肠啊Top
8 楼blueflypigeon(蓝鸽)回复于 2004-09-03 23:34:56 得分 5
用行的token分隔吧,可以直接按照空格等分割出数组来Top
9 楼louisqiang(tenwin)回复于 2004-09-04 01:15:29 得分 5
如果文件字段长度固定,建议用randomaccessfileTop
10 楼blueflypigeon(蓝鸽)回复于 2004-09-04 09:17:53 得分 5
StringTokenizer st = new StringTokenizer(strline);
int red = Integer.parseInt(st.nextToken());
int green = Integer.parseInt(st.nextToken());//等等
Top
11 楼ligenlee(lee)回复于 2004-09-04 10:09:02 得分 0
用readline和token组合即可Top




