文件 I/O字符流
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import java.io.Reader;
public class test_main {
public static void main(String[] args) {
// TODO 自动生成的方法存根
File sourceFile = new File("a.txt");
File targetFile = new File("b.txt");
System.out.println(sourceFile.getAbsolutePath());
System.out.println(targetFile.getAbsolutePath());
char c[] = new char[19];
try {
Writer out = new FileWriter(targetFile,true);
/*Writer用于写入字符流的抽象类。
FileWriter用于写入字符流。
第一个参数给File对象构造一个FileWriter对象。
第二个参数为ture,则字节将写入文件的末尾而不是开头。*/
Reader in = new FileReader(sourceFile);
/*Reader用于读取字符流的抽象类
FileReader用于读取字符流。
创建一个新的FileReader,给予File读取。*/
int n = -1;
while((n=in.read(c))!=-1) {
/*read将字符读入数组。该方法将阻塞,直到某些输入可用,发生
I/O错误或达到流的结尾。
cbuf-目的缓冲区。
读取的字符数,如果已经达到流的结尾,则为-1.*/
out.write(c,0,n);
}
out.flush();
/*刷新流。如果流已经从缓冲区中的各种write()方法保存
了任何字符,将他们立即写入到其预期目的地。如果该目的地
是另一个字符或字节流,将其刷新。
一个flush()调用将率新Writers和OutputStreams链中
所有缓冲区。*/
in.close();
out.close();
}
catch(IOException e) {
System.out.println("Error "+e);
}
}
}
文件 I/O字符流的更多相关文章
- java 文件字节和字符流 缓冲流
流的原理 1) 在 Java 程序中,对于数据的输入/输出操作以“流”(stream) 方式进行:2) J2SDK 提供了各种各样的“流”类,用以获取不同种类的数据:程序中通过标准的方法输入或输出数据 ...
- Java文件字节流和字符流
输入流:只能从中读取数据,不能向其写入数据. InputStream,Reader 输出流:只能向其中写入数据,不能从中读取数据. OutputStream, Writer 输入流是相对于程序而言,外 ...
- Java文件与io——字符流
Writer写入字符流的抽象类.对文件的操作使用:FileWriter类完成 Reader读取字符的抽象类. public class CharDemo { /** * @param args */ ...
- java 21 - 4 字符流的文件复制操作以及简化
既然字节流可以复制文件,那么字符流当然也有. 同样的思路: 数据源: a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader目的地: b.txt -- 写出数据 -- ...
- Java中的字节流,字符流,字节缓冲区,字符缓冲区复制文件
一:创建方式 1.建立输入(读)对象,并绑定数据源 2.建立输出(写)对象,并绑定目的地 3.将读到的内容遍历出来,然后在通过字符或者字节写入 4.资源访问过后关闭,先创建的后关闭,后创建的先关闭 ...
- (19)IO流之字符流FileReader和FileWriter,缓冲字符流---缓冲输入字符流BufferedReader和缓冲输出字符流BufferedWriter
字符流,读取的文件是字符的时候,有两个基类一个是Reader,一个是Writer这有点拟人的感觉,人直接看懂的是文字 字符流 字节流:读取的是文件中的二进制字节流并不会帮你转换成看的懂得字符 字符流: ...
- java IO之 字符流 (字符流 = 字节流 + 编码表) 装饰器模式
字符流 计算机并不区分二进制文件与文本文件.所有的文件都是以二进制形式来存储的,因此, 从本质上说,所有的文件都是二进制文件.所以字符流是建立在字节流之上的,它能够提供字符 层次的编码和解码.列如,在 ...
- Java学习笔记29(IO字符流,转换流)
字符流:只能操作文本文件,与字节流的区别是,字节流是按照字节来读取文件,而字符流是按照字符来读取,因此字符流的局限性为文本文件 字符输出流:Write类,使用时通过子类 每一次写入都要刷新 pac ...
- java基础之io流总结四:字符流读写
字符流读写只适用于字符文件. 基本字符流(转换流)读写文件 转换流本身是字符流,但是实例化的时候传进去的是一个字节流,所以叫做转换流 InputStreamReader isr = new Input ...
随机推荐
- Oracle SYS用户无法设置session级别的read only
官方文档参考:SYSDBA is used internally in the Oracle database and has specialized functions. Its behavior ...
- Hybris ECP(Enterprise Commerce Platform)的调试
This blog is written to demonstrate how to setup debug environment for Hybris ECP(Enterprise Commerc ...
- (String)、toString()与String.valueOf()的区别
(String).Object.toString()正常情况下跟String.valueOf()没有区别. 但当Object是null的时候.toString会抛出异常.valueOf返回" ...
- SSH 学习记录及在SSH模式下使用XShell连接服务器
传统的网络服务程序,如rsh.FTP.POP和Telnet其本质上都是不安全的:因为它们在网络上用明文传送数据.用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击 ...
- Android(java)学习笔记50:通过反射获取成员变量和成员方法并且使用
1. 反射获取成员变量并且使用: (1)获取字节码文件对象: Class c = Class.forName("cn.itcast_01.Person"); (2) ...
- 2018.11.28 OGNL表达式与struts2框架结合的体现---在配置文件中体现(补充)
Demo3Action配置 struts.xml 主配置文件配置 地址栏输入 http://localhost:8080/StrutsDay03/Demo3Action 对于主配置的文件参数而言,如果 ...
- jsp的4个作用域区别( pageScope、requestScope、sessionScope、applicationScope)
简单描述 page里的变量没法从index.jsp传递到test.jsp.只要页面跳转了,它们就不见了. request里的变量可以跨越forward前后的两页.但是只要刷新页面,它们就重新计算了. ...
- opencv 数据类型转换:CvArr, Mat, CvMat, IplImage, BYTE 转
留着以后查询: http://blog.csdn.net/augusdi/article/details/8863820 一.Mat类型:矩阵类型,Matrix. 在openCV中,Mat是一个多维的 ...
- Centos安装VMware
转载:http://www.mamicode.com/info-detail-2171464.html
- EntityFramework Code-First-------领域类配置之DataAnnotations
EF Code-First提供了一个可以用在领域类或其属性上的DataAnnotation特性集合,DataAnnotation特性会覆盖默认的EF约定. DataAnnotation存在于两个命名空 ...