这个java程序哪里错了?

来源:百度知道 编辑:UC知道 时间:2024/07/02 04:30:37
设计一个类FileRWTest,实现从input.txt文件中读入数据到字符数组cBuffer中,然后再写入到文件“output.txt”中。
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class FileRWTest {

public static void main(String[] args) {

File fin=new File("D://","input.txt");

File fout=new File("D://","output.txt");

try {

if(!fin.exists())

fin.createNewFile();

if(!fout.exists())

fout.createNewFile();
FileReader fr=new FileReader(fin);
char cBuffer[]=new char[512];
int rs=0;

while((rs=fr.read(cBuffer))>0){
String s=new String(cBuffer,0,rs);

下面是在你程序基础上改的:
package zhidao;

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class FileRWTest {

public static void main(String[] args) {

File fin=new File("D://","input.txt");
File fout=new File("D://","output.txt");

try {

if(!fin.exists()) fin.createNewFile();
if(!fout.exists()) fout.createNewFile();
char cBuffer[]=new char[512];
int rs=0;
FileReader fr=new FileReader(fin);
FileWriter fw=new FileWriter(fout);

while((rs=fr.read(cBuffer))>0){
fw.write(cBuffer, 0, rs);
}

fw.close();
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

你要从input.txt读数据到output.txt里面,首先你得保证input.txt里面有内容是吧,不然看不出效果的。其次,fw.write(str)调用后,输出的内容都在缓冲里面