以下是我的一小段程序,目的是把文件读出来,然后把所有内容改成大写后,再复制到原内容的后面并读出来,我是在不知该怎样写了,请高手指点,谢谢
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.BufferedWriter;
class Test{
public static void main(String[] args){
try{
FileReader fr=new FileReader("E:\\学习\\JAVA\\P351\\file.txt);
BufferedReader br=new BufferedReader(fr);
FileWriter fw=new FileWriter("E:\\学习\\JAVA\\P351\\file.txt,true);
BufferedWriter bw=new BufferedWriter(fw);
String line=br.readLine();
while(line!=null){
System.out.println(line);
bw.write(line);
line=br.readLine();
}
}catch(IOException e){
System.out.println("文件不存在!");
}
}
}
----------------解决方案--------------------------------------------------------
你这是写在同一个文件里 所以你不能把bw.write(line);写在while里 这要会死循环的。你可以把它读出来先保存在一个变量里。然后在写个方法往外写。还有就是要记住清缓存和关闭流
----------------解决方案--------------------------------------------------------
String 里有个方法可以实现大小写转换
----------------解决方案--------------------------------------------------------
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.BufferedWriter;
class Test{
public static void main(String[] args){
try{
FileReader fr=new FileReader("E:\\学习\\JAVA\\P351\\file.txt");
BufferedReader br=new BufferedReader(fr);
FileWriter fw=new FileWriter("E:\\学习\\JAVA\\P351\\file.txt",true);
BufferedWriter bw=new BufferedWriter(fw);
FileReader fr1=new FileReader("E:\\学习\\JAVA\\P351\\file1.txt");
BufferedReader br1=new BufferedReader(fr1);
FileWriter fw1=new FileWriter("E:\\学习\\JAVA\\P351\\file1.txt");
BufferedWriter bw1=new BufferedWriter(fw1);
String line=br.readLine();
while(line!=null){
System.out.println (line);
line = line.toUpperCase ();
bw1.write (line);
bw1.newLine ();
line=br.readLine();
}
String line1=br1.readLine();
while(line1!=null){
bw.newLine ();
bw.write (line1);
line1=br1.readLine();
}
bw1.close();
bw.close();
}catch(IOException e){
System.out.println("文件不存在!");
}
}
}
按照您说的我改了一下,只实现了将原内容转换成大写后复制到file1中,没有实现再将大写的内容复制到原文件的后面,请指教
----------------解决方案--------------------------------------------------------
不知道是不是这个意思
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.BufferedWriter;
class Test {
public static void main(String[] args) {
BufferedReader br = null;
BufferedWriter bw = null;
try {
String s = \"\";
br = new BufferedReader(new FileReader(\"E:\\file.txt\"));
bw = new BufferedWriter(new FileWriter(\"E:\\file.txt\", true));
String line = br.readLine();
while (line != null) {
s += line;
line = br.readLine();
}
bw.write(s.toUpperCase());
bw.flush();
} catch (IOException e) {
System.out.println(\"文件不存在!\");
} finally {
try {
br.close();
bw.close();
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
}
}
[此贴子已经被作者于2007-7-10 12:40:38编辑过]
----------------解决方案--------------------------------------------------------
问题得到解决 谢谢您的帮助
----------------解决方案--------------------------------------------------------
你是不是想问这个啊
----------------解决方案--------------------------------------------------------
一看就是一熟练工
女强人哇
----------------解决方案--------------------------------------------------------
熟练工
什么意思
----------------解决方案--------------------------------------------------------
我想他说你是个老手吧```
----------------解决方案--------------------------------------------------------