FileWriter
package writer_33;
import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
//借助字符输出流Writer-FileWriter往文件中写入内容
public class FileWriterDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
Writer fw=null;
try {
System.out.println(System.getProperty("file.encoding"));
fw=new FileWriter("writer.txt");
//字符输出流:把一个个字节输出流做了包装,包装的同时指定字符编码格式
String s="hello writer,字符输出流";
fw.write(s);
//指定字符串的特定内容写入文件
//fw.write(s, 0, 2);
fw.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
控制台输出当前的编码格式

字符串写入writer.txt文档中
OutputStreamWriter类
package writer_33;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
//借助字符输出流Writer-OutputStreamWriter往文件中写入内容-解决中文乱码问题
public class OutputStreamWriterDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
Writer fw=null;
FileOutputStream fos=null;
OutputStreamWriter osw=null;
try {
System.out.println(System.getProperty("file.encoding"));
fos=new FileOutputStream("writer.txt");
//字符输出流,把一个字节输出流做了包装,包装的同时指定字符编码格式
osw=new OutputStreamWriter(fos, "GBK");
String s="hello writer,字符输出流解决中文乱码问题";
osw.write(s);
} catch ( IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
osw.close();
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}