转:

 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Handoking/article/details/83095380

输入输出的几种形式

1.FileReader,FileWriter

  File r = new File("temp.txt")
FileReader f = new FileReader(name);//读取文件name
BufferedReader b = new BufferedReader(f);//缓冲写入,提供了readline函数,可以按行读取。
Srting str = null;
while((str = b.readline()) != null){
System.out.print(str);//按行读取
}
//但FileReader涉及编码转换问题,默认系统编码,容易出现乱码
   FileWriter writer = new FileWriter("c://test.txt");//FileWriter不会覆盖原来的文本,并且能识别换行符。
BufferedWriter bw = new BufferedWriter(writer);//缓冲写入,提高写入速度
bw.write("已存在的字符串");

2.inputStreamReader,outputStreamWriter

    File f = new File("//..//");
InputStreamReader reader = new InputStreamReader(new FileInputStream(f));
BuffeReader br = new BufferedWriter(reader);
//FileReader是把文件转换为字符流读入
//FileInputStream是读取字节流
//InputStreamReader将字节转换为字符,同时InputStreamReader的参数中可以自定义编码,这是个重要的特性。
//OutputStreamWriter的用法同InputStreamReader,同样可以用户在其参数中自定义编码方式,比较适合对中文文档的写。

3.按行读写并指定编码方式

//按行读中文文档,为了之后能按行写,先将读到的中文字符串,放入数组
List<String>temp = new ArrayList<>();
File f = new File("c://data.txt");
InputStreamReader reader = new InputStreamReader(new FileInputStream(f),"GBK");
BufferedReader br = new BufferedReader(reader);
String str=null;
while((str=br.readline())!=null){
temp.append(str);
}
br.close();
reader.close();
//下面按行读。我实现的其实就是变相的分行打印,如果有更好的方法请大家指教
OutputStreamWriter os = new OutputStreamWriter(new FileOutputStream("out.txt"),"GBK");
BufferedWriter bw = new BufferedWriter(os);
PrintWriter out = new PrintWriter(bw);
for(String aTemp:temp){
out.println(aTemp);
}
bw.close();
os.close();
out.close();

java指定编码的按行读写txt文件(几种读写方式的比较)的更多相关文章

  1. cv.Mat 与 .txt 文件数据的读写操作

    1.按OpenCV格式实现的 .txt 文件读写 可以用 cvSave 和 cvLoad 实现,格式和 .xml/.yml 的差不多,不过如果专用与 OpenCV 的数据读写,还是用  .xml/.y ...

  2. UNICODE环境下读写txt文件操作

    内容转载自http://blog.sina.com.cn/s/blog_5d2bad130100t0x9.html UNICODE环境下读写txt文件操作 (2011-07-26 17:40:05) ...

  3. WPF 读写TxT文件

    原文:WPF 读写TxT文件 文/嶽永鹏 WPF 中读取和写入TxT 是经常性的操作,本篇将从详细演示WPF如何读取和写入TxT文件. 首先,TxT文件希望逐行读取,并将每行读取到的数据作为一个数组的 ...

  4. 2.获取指定目录及子目录下所有txt文件的个数,并将这些txt文件复制到F盘下任意目录

    package cn.it.text; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import ...

  5. python操作txt文件中数据教程[1]-使用python读写txt文件

    python操作txt文件中数据教程[1]-使用python读写txt文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果 程序实现 filename = '. ...

  6. MFC读写.txt文件时进度条显示实时进度

    整体实现方式:先获得文件长度,然后用每次读取的长度,计算出完成的百分比,用百分比的值设置进度条. 一.MFC进度条 Progress Control 相关函数 1. create() --创建Prog ...

  7. [转载]C#读写txt文件的两种方法介绍

    C#读写txt文件的两种方法介绍 by 大龙哥 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char ...

  8. C#读写txt文件的两种方法介绍

    C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...

  9. C#读写txt文件的两种方法介绍[转]

    C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...

随机推荐

  1. 记一次生产mysql数据误操作恢复过程

    提示:建议每次对数据库进行修改时都做下备份 注意:以下Mysql开启的是row格式的binlog日志,确定到误操作具体时间可能有些麻烦,默认的格式就能很快找出来.这里开启row的原因是还有一种更快的方 ...

  2. ES6 & Map & hashMap

    ES6 & Map & hashMap 01 two-sum https://leetcode.com/submissions/detail/141732589/ hashMap ht ...

  3. 阿里云服务器晚上运行定时任务报Too many connections

    1. 相关查询连接数的命令 mysql>show variables like '%max_connections%'; +-------------------------+--------- ...

  4. import、export 和export default區別

    https://www.cnblogs.com/xiaotanke/p/7448383.html

  5. maven(win10)配置完环境变量后无法识别mvn -v命令

    第一步:http://maven.apache.org/download.cgi官网下载 第二步:把压缩包解压缩到不含中文和空格的目录下 第三步:新建MAVEN_HOME环境变量,值为maven解压缩 ...

  6. Java多线程之实现Runnable接口

    package org.study2.javabase.ThreadsDemo.runnable; /** * @Auther:GongXingRui * @Date:2018/9/18 * @Des ...

  7. pycharm中查看源码的快捷键

    将光标移动至要查看的方法处,按住ctrl  点击鼠标左键,即可查看该方法的源码

  8. HTML知识点总结[部分]

    Web服务的本质(socket实例) import socket def handle_request(client): buf = client.recv(1024) client.send(byt ...

  9. mysql 集群方案

    试试基于Galera的MySQL高可用集群  mha  mgr

  10. Mysql 千万级别数据数据查询

    1.构建数据 --创建MyISAM模式表方便批量跑数据 CREATE TABLE `logs1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `logtype` v ...