private void ReadTxt() throws IOException {
File f = new File("2008-07-01_100643.txt");
FileInputStream fstream = new FileInputStream(f);
BufferedReader br = new BufferedReader(new InputStreamReader(fstream, "unicode"));
String str = "";
StringBuffer bf = new StringBuffer();
String[] strs = new String[1000];
while ((str = br.readLine()) != null) {
// bf.append(str);
//System.out.println(str);
strs = str.split(" ");
}
for(int i=0;i<strs.length;i++){
System.out.println(strs[i]);
} br.close();
fstream.close(); FileWriter fw = new FileWriter("a.txt", false);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(bf + "");
bw.close();
fw.close(); }
为什么我数组里 只拿到了左后一行 ?组后行覆盖了前面的?那怎么样能拿到全部呢,已经是个数组接受了呀。
File f = new File("2008-07-01_100643.txt");
FileInputStream fstream = new FileInputStream(f);
BufferedReader br = new BufferedReader(new InputStreamReader(fstream, "unicode"));
String str = "";
StringBuffer bf = new StringBuffer();
String[] strs = new String[1000];
while ((str = br.readLine()) != null) {
// bf.append(str);
//System.out.println(str);
strs = str.split(" ");
}
for(int i=0;i<strs.length;i++){
System.out.println(strs[i]);
} br.close();
fstream.close(); FileWriter fw = new FileWriter("a.txt", false);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(bf + "");
bw.close();
fw.close(); }
为什么我数组里 只拿到了左后一行 ?组后行覆盖了前面的?那怎么样能拿到全部呢,已经是个数组接受了呀。
temp = temp + strs[i];
System.out.println(temp);
}
for(int i=0;i <strs.length;i++){
temp = temp + strs[i];
System.out.println(temp);
}
这样做还是只得到了最后一行而已哦。
bf.append(str[i]);
System.out.println(bf);
}
while ((str = br.readLine()) != null) {
bf.append(str);
strs = str.split(" ");
}
String ss = bf.toString();
strs = ss.split(" ");
// System.out.print(strs.length);
for (int i = 0; i < strs.length; i++) {
System.out.println(strs[i]);
}
我把bf给到个String里 然后在用split分割 然后在给回数组。这样做 是不是很麻烦?不效率?
而strs没有进行累加,每一次循环strs都进行了重新的赋值,所以得到的就是最后一行的数据