import java.io.BufferedReader; import java.io.File; import java.io.FileReader;public class Test { public static void main(String[] args) throws Exception { char[] characterStored = null; BufferedReader bfr = new BufferedReader(new FileReader(new File( "test.txt"))); String str = ""; do { str += bfr.readLine(); } while (bfr.readLine() != null); characterStored = str.toCharArray(); bfr.close(); for (char c : characterStored) { System.out.println(c); } } }/* 2 0 0 7 1 2 0 7 - 0 1
好 高 , 坏 低*/
楼上的果然有效!谢谢dracularking兄!再请问一下,这个for语句的格式怎么这么奇怪?我从来没见过,但编译后也能正确运行,望赐教for (char c : characterStored) { System.out.println(c); }
这个是jdk1.5后有的foreach循环.
按照1楼的高人的做法,在处理中遇到一个问题,问题如下: 用 str += bfr.readLine(); 读取txt文件中的内容,每次都是隔一行读取,也就是每读完一行,不是从下一行读起,而是从下两行开始读。 例如,txt文件中的内容为 abc def ghi读取并输出的结果为 a b c g h i漏掉了def这一行。望高手指点一下原因及解决办法。
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;public class Test {
public static void main(String[] args) throws Exception {
char[] characterStored = null;
BufferedReader bfr = new BufferedReader(new FileReader(new File(
"test.txt")));
String str = "";
do {
str += bfr.readLine();
}
while (bfr.readLine() != null);
characterStored = str.toCharArray();
bfr.close();
for (char c : characterStored) {
System.out.println(c);
}
}
}/*
2
0
0
7
1
2
0
7
-
0
1
好
高
,
坏
低*/
System.out.println(c);
}
用
str += bfr.readLine();
读取txt文件中的内容,每次都是隔一行读取,也就是每读完一行,不是从下一行读起,而是从下两行开始读。
例如,txt文件中的内容为
abc
def
ghi读取并输出的结果为
a
b
c
g
h
i漏掉了def这一行。望高手指点一下原因及解决办法。
还是谢谢1楼的高人!