package Object;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.Flushable;
import java.io.IOException;
import java.io.Writer;
class Test{
public static void main(String[] args)throws IOException {
FileReader fr = new FileReader("c:\\password.txt");
FileWriter fw = new FileWriter("c:\\pass.txt");
MyBufferedReader mbr = new MyBufferedReader(fr);
MyBufferedWriter mbw = new MyBufferedWriter(fw);
String line = null;
while((line=mbr.myReadLine())!=null){
mbw.write(line);
mbw.newLine();
mbw.flush();
}
mbr.close();
mbw.close();
}
}
//模拟BufferedReader中的readLine()的功能,自己定义一个类似的两种。
//定义一个MyBufferedreader类。
class MyBufferedReader{
private FileReader fr;
MyBufferedReader(FileReader fr){
this.fr = fr;
}
//定义一个功能类似readLine的myReadLine()
public String myReadLine()throws IOException{
//定义一个容器用来存储读到的一行文本。
StringBuilder sb = new StringBuilder();
//采用FileReader中的read方法一个字符一个字符的读。
int ch = 0;
while(ch!=-1){
ch=fr.read();
if (ch=='\r')
continue;
if (ch=='\n')
return sb.toString();
else
sb.append((char)ch);
}
return null;
}
void close()throws IOException{
fr.close();
}
}
//模拟BufferedWriter中的write(line)和newLine()和flush()功能,
//所以定义一个MyBufferedWriter类。
class MyBufferedWriter {
private FileWriter fw;
MyBufferedWriter(FileWriter fw){
this.fw = fw;
}
//定义其write(字符串)的功能
public String write(){
}
//定义其换行功能。
public void newLine(){
}
//定义其刷新缓冲得功能
public void flush() throws IOException{
fw.flush();
}
//定义其关闭流的功能
public void close() throws IOException{
fw.close();
}
} |
|