package com.hanchao.test;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
/**
* 测试类
* @author hanlw
* 2012- 07-06
*/
public class Test_Five {
public static void main(String[] args) throws Exception{
/**
* 文本文件的读写(字符流)
*
* 1.java.io.FileReader → java.io.InputStreamReader → java.io.Reader
* (缓冲) java.io.BufferedReader → java.io.Reader
*
* 2.java.io.FileWriter → java.io.OutputStreamWriter → java.io.Writer
* (缓冲) java.io.BufferedWriter → java.io.Writer
*/
/**
* 1.写
*/
File file = new File("C:/java.txt");
//FileOutputStream fileOutputStream = new FileOutputStream(file);
//OutputStreamWriter out = new OutputStreamWriter(fileOutputStream);
//上面的两行和下面的一行是等价的
FileWriter out = new FileWriter(file);
BufferedWriter bw = new BufferedWriter(out);
/**
* 追加数据时:比如对c:java.txt文档增加数据时我们必须要这样写:
* BufferedWriter bw = new BufferedWriter(new FileWriter(file,true));
*
* 即第42行为:FileWriter out = new FileWriter(file,true);
*/
//写入文本
String str = "hanchao will be successful";
bw.write(str);
bw.write("123\r\n");
bw.write("456\r\t");
//流的关闭
bw.close();
/**
* 2.读
*/
//FileInputStream fileInputStream = new FileInputStream(file);
//InputStreamReader in = new InputStreamReader(fileInputStream);
//上面的两行和下面的一行是的等价
FileReader in = new FileReader(file);
BufferedReader reader = new BufferedReader(in);
//String str1 = reader.readLine();//一次只能读取一行
//System.out.println(str1);
//由于上面一行代码只能读取一行,所以换成下面的
String str1 = null;
while((str1=reader.readLine()) != null) {
System.out.println(str1);
}
//流的关闭
reader.close();
/**
* 3.补充知识点:PrintWriter类
*/
PrintWriter pw = new PrintWriter(new File("c:/print.txt"));
pw.write("abc\r\n");
pw.write("123");
pw.flush();
pw.close();
}
}
     本文转自韩立伟 51CTO博客,原文链接:http://blog.51cto.com/hanchaohan/922585,如需转载请自行联系原作者

文本文件的读写(字符流)相关推荐

  1. 复习Java字节流_字符流使用及案例

    字节流_字符流 主要内容 IO流 字节流 字符流 异常处理 Properties 第一章 IO概述 1.1 什么是IO 生活中,你肯定经历过这样的场景.当你编辑一个文本文件,忘记了ctrl+s ,可能 ...

  2. java day20【字节流、字符流】

    第一章 IO概述 1.1 什么是IO 生活中,你肯定经历过这样的场景.当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了.当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里.那 ...

  3. io包下 文件类 字节流 字符流 缓冲流 转换流 序列化流 打印流

    第一章 File类 1.1 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 1.2 构造方法 public File(String pat ...

  4. 一文读懂Java中File类、字节流、字符流、转换流

    一文读懂Java中File类.字节流.字符流.转换流 第一章 递归:File类: 1.1:概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. ...

  5. 字符流的相关概念和相关方法的使用、IO异常的处理以及Properties属性集

    一.字符流 当使用字节流读取文本文件时,可能会有一个小问题.就是遇到中文字符时,可能不会显示完整的字符,那是因为一个中文字符可能占用多个字节存储.所以Java提供一些字符流类,以字符为单位读写数据,专 ...

  6. Java基础(17)——字节流、字符流

    目录 第一章 IO概述 1.1 什么是IO 1.2 IO的分类 1.3 IO的流向说明图解 1.4 顶级父类们 第二章 字节流 2.1 一切皆为字节 2.2 字节输出流[OutputStream] 2 ...

  7. day09【字节流、字符流】

    [字节流.字符流] 主要内容 IO流 字节流 字符流 异常处理 Properties 教学目标 能够说出IO流的分类和功能 能够使用字节输出流写出数据到文件 能够使用字节输入流读取数据到程序 能够理解 ...

  8. JavaSE(字符流、IO资源的处理、属性集、ResourceBundle工具类、缓冲流、转换流、序列化、打印流、装饰设计模式、commons-io工具包)

    JavaSE 字符流 字符输入流[Reader] 字符输入流Reader类的概述 字符输入流Reader类的常用方法 FileReader类 FileReader类的概述 FileReader类的构造 ...

  9. IO流如何选择字节流和字符流??

    问:字节流与字符流有什么区别? 答:计算机中的一切最终都是以二进制字节形式存在的,对于我们经常操作的字符串,在写入时其实都是先将字符转成对应的字节,然后将字节写入到输出流,在读取时其实都是先读到的是字 ...

  10. 字节流、字符流(精细讲解)

    字节流.字符流 1.1 什么是IO 生活中,你肯定经历过这样的场景.当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了.当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里.那么 ...

最新文章

  1. 用python解“用天平找小球”题
  2. SpringCloud Config Server搭建
  3. 监控利器nagios
  4. 最实用的logback讲解(1)
  5. 一个html文档的开始标记,如何在Python中只向HTML文档添加一个开始标记
  6. django 1.8 官方文档翻译: 2-6-2 遗留的数据库
  7. 性能优化工作笔记001---springcloud项目性能优化_工作经验随时更新
  8. vbreport8.wpf.viewer 个别电脑不显示_手机听歌不过瘾?一招将Win10电脑变成蓝牙音箱...
  9. 关于ecshop模板更新版本的解决方法(三)
  10. 的pro文件添加opencv配置_VS2013+OpenCV3.1.0配置方法
  11. Redis配置文件解读
  12. Android OpenGL ES(十三)通用的矩阵变换指令 .
  13. linux mysql 密码策略_linux密码策略
  14. SCSA之信息安全概述
  15. 堆叠沙漏网络(stacked hourglass network)
  16. 阿里云6·18新玩法上线:邀好友送天猫超市卡 更有机会赢得iPhone 12 Pro!
  17. VB.NET自制动态桌面
  18. 用java实现歌手大赛
  19. 蓝桥杯T513---- 算法训练 素因子去重 java
  20. 抢先看:iPhone5整机完整亮相

热门文章

  1. oracle导入java包时出错,Oracle导入导出的常见错误
  2. 通过加载 QSS 文件的方式美化 QT 界面
  3. 生信多组学整合工具的比较研究
  4. jar包导出无法显示图片或者音乐_音乐曲谱软件-Guitar Pro 7 for Mac
  5. 光流 | 基于HS光流算法的稠密光流提取(Matlab源代码)
  6. 北斗导航 | 基于MATLAB的卫星轨道模拟
  7. mysql数据库扫描_使用nmap对mysql 数据库进行扫描
  8. socket缓冲区以及阻塞模式详解
  9. fseek/ftell/rewind/fgetpos/fsetpos函数使用-linux
  10. 电脑安装android2.0,电脑上怎么安装使用安卓系统