OutputStreamWriter写数据
█ OutputStreamWriter写数据方法
█ 字符流操作要注意的问题
☞public void write(int c); //写入单个字符。
☞public void write(char[] cbuf); //写入字符数组。
☞public void write(char[] cbuf,int off,int len); //写入字符数组的某一部分。
☞public void write(String str); //写入字符串。
☞public void write(String str,int off,int len); //写入字符串的某一部分。
☞flush()的作用
☞flush()和close()的区别
public static void main(String[] args) throws IOException {
//字符流 = 字节流 + 编码表
FileOutputStream fos = new FileOutputStream("1.txt");
//没有影响。如果文件不存在,会创建
//FileInputStream fis = new FileInputStream("2.txt"); //如果文件不存在,后续无法操作
//OutputStreamWriter osw = new OutputStreamWriter(fos); //这样写默认的编码表就是系统默认(utf-8)
OutputStreamWriter osw = new OutputStreamWriter(fos,"utf-8");
osw.write("你好!"); //不写 flush 不能刷新缓冲写入文件,close 关闭文件也有这个功能
osw.write('中'); //写入单个字符
osw.write("初次见面,请多关照", 2, 3); //写入字符串的一部分;从第二个字符开始写,一共写三个
|
char[] ch = {'今','天','下','雨'};
osw.write(ch); //写入数组
osw.write(ch, 2, 2); //从数组第二个字符开始,写2两个到缓冲区
osw.flush(); //刷新缓冲区,把管道里的数据写入文件
osw.close(); //释放资源,但是释放之前会 flush
}
}
|