你自己的 FileWriter
实现 FileConsoleWriter 的逻辑。
FileConsoleWriter 类必须包含名为 fileWriter 的 private clFileWriter 字段。
FileConsoleWriter 类必须对每个使用的构造方法初始化用于写入的 fileWriter。
FileConsoleWriter 类必须包含 5 个 write 方法和一个 close 方法。
- public void write(char[] cbuf, int off, int len) throws IOException
- public void write(int c) throws IOException
- public void write(String str) throws IOException
- public void write(String str, int off, int len) throws IOException
- public void write(char[] cbuf) throws IOException
- public void close() throws IOException
在将数据写入文件时,FileConsoleWriter 还必须将数据写入控制台。
Requirements:
- FileConsoleWriter 类必须包含名为 fileWriter 的 private FileWriter 字段,该字段应立即初始化。
- FileConsoleWriter 类必须包含五个构造方法,这些方法初始化用于写入的 fileWriter。
- FileConsoleWriter 类必须包含 write(char[] cbuf, int off, int len) throws IOException 方法,该方法应将数据写入 fileWriter 以及控制台。
- FileConsoleWriter 类必须包含 write(int c) throws IOException 方法,该方法应将数据写入 fileWriter 以及控制台。
- FileConsoleWriter 类必须包含 write(String str) throws IOException 方法,该方法应将数据写入 fileWriter 和控制台。
- FileConsoleWriter 类必须包含 write(String str, int off, int len) throws IOException 方法,该方法应将数据写入 fileWriter 和控制台。
- FileConsoleWriter 类必须包含 write(char[] cbuf) throws IOException 方法,该方法应将数据写入 fileWriter 和控制台。
- FileConsoleWriter 类必须包含 close() throws IOException 方法,该方法应调用 fileWriter 上的相应方法。
package zh.codegym.task.task19.task1917;
/*
你自己的 FileWriter
*/
import java.io.File;
import java.io.FileDescriptor;
import java.io.FileWriter;
import java.io.IOException;
public class FileConsoleWriter {
private FileWriter fileWriter;
public FileConsoleWriter(String fileName) throws IOException {
fileWriter = new FileWriter(fileName);
}
public FileConsoleWriter(String fileName, boolean append) throws IOException {
fileWriter = new FileWriter(fileName, append);
}
public FileConsoleWriter(File file, boolean append) throws IOException {
fileWriter = new FileWriter(file, append);
}
public FileConsoleWriter(File file) throws IOException {
fileWriter = new FileWriter(file);
}
public FileConsoleWriter(FileDescriptor fd) {
fileWriter = new FileWriter(fd);
}
public void write(char[] cbuf, int off, int len) throws IOException {
fileWriter.write(cbuf, off, len);
System.out.println(new String(cbuf, off, len));
}
public void write(int c) throws IOException {
fileWriter.write(c);
System.out.println((char) c);
}
public void write(String str) throws IOException {
fileWriter.write(str);
System.out.println(str);
}
public void write(String str, int off, int len) throws IOException {
fileWriter.write(str, off, len);
System.out.println(str.substring(off, off+len));
}
public void write(char[] cbuf) throws IOException {
fileWriter.write(cbuf);
System.out.println(new String(cbuf));
}
public void close() throws IOException {
fileWriter.close();
}
public static void main(String[] args) {
}
}
答:用自己写的类包装一下要学习的类,哪怕仅仅只是调用一下它的方法!