java基础6:io流对象之字符输入输出流
2017-11-12 21:40
302 查看
1,FileWriter
/*
* 字符输出流
* java.io.Writer 所有字符输出流的超类
* 写文件,写文本文件
*
* 写的方法 write
* write(int c) 写1个字符
* write(char[] c)写字符数组
* write(char[] c,int,int)字符数组一部分,开始索引,写几个
* write(String s) 写入字符串
*
* Writer类的子类对象 FileWriter
*
* 构造方法: 写入的数据目的
* File 类型对象
* String 文件名
*
* 字符输出流写数据的时候,必须要运行一个功能,刷新功能
* flush()
*/
FileWriter fw = new FileWriter("c:\\1.txt");
//写1个字符
fw.write(100); //记事本显示b
fw.flush();
//写1个字符数组
char[] c = {'a','b','c','d','e'};
fw.write(c); //显示abcde
fw.flush();
//写字符数组一部分
fw.write(c, 2, 2);
fw.flush(); //显示cd
//写如字符串
fw.write("hello"); 显示hello
fw.flush();
fw.close();
2,FileReader
/*
* 字符输入流读取文本文件,所有字符输入流的超类
* java.io.Reader
* 专门读取文本文件
*
* 读取的方法 : read()
* int read() 读取1个字符
* int read(char[] c) 读取字符数组
*
* Reader类是抽象类,找到子类对象 FileReader
*
* 构造方法: 绑定数据源
* 参数:
* File 类型对象
* String文件名
*/
FileReader fr = new FileReader("c:\\1.txt");
/*int len = 0 ;
while((len = fr.read())!=-1){
System.out.print((char)len);
}*/
char[] ch = new char[1024];
int len = 0 ;
while((len = fr.read(ch))!=-1){
System.out.print(new String (ch,0,len));
}
fr.close();
字符流复制文件
/*
* 字符流复制文本文件,必须文本文件
* 字符流查询本机默认的编码表,简体中文GBK
* FileReader读取数据源
* FileWriter写入到数据目的
*/
FileReader fr = null;
FileWriter fw = null;
try{
fr = new FileReader("c:\\1.txt");
fw = new FileWriter("d:\\1.txt");
int len = 0;
char[] ch = new char[1024];
while((len = fr.read(ch))!=-1){
fw.write(ch,0,len);
fw.flush(); //必须刷新
}
}
此方法只能复制用记事本可以读取的文本内容,复制别的内容会导致文件打不开
/*
* 字符输出流
* java.io.Writer 所有字符输出流的超类
* 写文件,写文本文件
*
* 写的方法 write
* write(int c) 写1个字符
* write(char[] c)写字符数组
* write(char[] c,int,int)字符数组一部分,开始索引,写几个
* write(String s) 写入字符串
*
* Writer类的子类对象 FileWriter
*
* 构造方法: 写入的数据目的
* File 类型对象
* String 文件名
*
* 字符输出流写数据的时候,必须要运行一个功能,刷新功能
* flush()
*/
FileWriter fw = new FileWriter("c:\\1.txt");
//写1个字符
fw.write(100); //记事本显示b
fw.flush();
//写1个字符数组
char[] c = {'a','b','c','d','e'};
fw.write(c); //显示abcde
fw.flush();
//写字符数组一部分
fw.write(c, 2, 2);
fw.flush(); //显示cd
//写如字符串
fw.write("hello"); 显示hello
fw.flush();
fw.close();
2,FileReader
/*
* 字符输入流读取文本文件,所有字符输入流的超类
* java.io.Reader
* 专门读取文本文件
*
* 读取的方法 : read()
* int read() 读取1个字符
* int read(char[] c) 读取字符数组
*
* Reader类是抽象类,找到子类对象 FileReader
*
* 构造方法: 绑定数据源
* 参数:
* File 类型对象
* String文件名
*/
FileReader fr = new FileReader("c:\\1.txt");
/*int len = 0 ;
while((len = fr.read())!=-1){
System.out.print((char)len);
}*/
char[] ch = new char[1024];
int len = 0 ;
while((len = fr.read(ch))!=-1){
System.out.print(new String (ch,0,len));
}
fr.close();
字符流复制文件
/*
* 字符流复制文本文件,必须文本文件
* 字符流查询本机默认的编码表,简体中文GBK
* FileReader读取数据源
* FileWriter写入到数据目的
*/
FileReader fr = null;
FileWriter fw = null;
try{
fr = new FileReader("c:\\1.txt");
fw = new FileWriter("d:\\1.txt");
int len = 0;
char[] ch = new char[1024];
while((len = fr.read(ch))!=-1){
fw.write(ch,0,len);
fw.flush(); //必须刷新
}
}
此方法只能复制用记事本可以读取的文本内容,复制别的内容会导致文件打不开
相关文章推荐
- Java语言基础-IO流(输入输出流) 字符流
- java基础5:io流对象之字节输入输出流
- Java语言基础-IO流(输入输出流) 字节流、转换流
- Java基础知识强化之IO流笔记61:标准输入输出流的本质
- java中的io流(输入输出流,序列化与反序列化,字节流 , 字符流,包装流,缓冲流)
- Java语言基础-IO流(输入输出流) 其他
- 【Java基础知识】IO流--标准输入输出流、打印流PrintStream
- 黑马程序员——JAVA基础——IO(一)---流概述,节点流、处理流、转换流与标准输入输出流、打印流、File文件对象、合并流
- Java基础---IO(二)--Properties类、打印流、序列流、对象操作流、数据输入输出流
- Java精选笔记_IO流(字符输入输出流、字符文件输入输出流、字符流的缓冲区)
- 黑马程序员_Java基础_其它对象和IO流(字符流)
- Java基础知识回顾-4 字符输入输出流
- Java基础知识强化之IO流笔记57:数据输入输出流(操作基本数据类型)
- java基础45 IO流技术(输入字符流/缓冲输入字符流)
- Java基础-IO-字符输入输出流(笔记)
- java基础之IO转换流--OutputStreamWriter(字符流通往字节流,可以指定字符编码的IO流对象)
- Java基础 - 序列流,内存输出流,随机访问流,对象操作流,数据输入输出流,打印流,标准输入输出流,Properties
- Java笔记(7)-输入、输出流、File类、InputStream、Reader、文件字节流、文件字符流、缓冲流、随机流、数据流、对象流、序列化和对象克隆、Scanner解析文件、Console流
- java基础--IO流之其它流对象
- Java基础之IO流,使用字符流缓冲区复制文件