java 字符流 utf8,JAVA基础(字符流设置编码读写字符)
1,使用指定的码表读写字符
FileReader是使用默认码表读取文件, 如果需要使用指定码表读取, 那么可以使用InputStreamReader(字节流,编码表)
FileWriter是使用默认码表写出文件, 如果需要使用指定码表写出, 那么可以使用OutputStreamWriter(字节流,编码表)
【1】 代码分析
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
public class Demo7_TransIO {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
//demo1();
//demo2();
BufferedReader br = //更高效的读
new BufferedReader(new InputStreamReader(new FileInputStream("utf-8.txt"), "utf-8"));
BufferedWriter bw = //更高效的写
new BufferedWriter(new OutputStreamWriter(new FileOutputStream("gbk.txt"), "gbk"));
int c;
while((c = br.read()) != -1) {
bw.write(c);
}
br.close();
bw.close();
}
public static void demo2() throws UnsupportedEncodingException,
FileNotFoundException, IOException {
InputStreamReader isr = new InputStreamReader(new FileInputStream("utf-8.txt"), "uTf-8"); //指定码表读字符
OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("gbk.txt"), "gbk"); //指定码表写字符
int c;
while((c = isr.read()) != -1) {
osw.write(c);
}
isr.close();
osw.close();
}
public static void demo1() throws FileNotFoundException, IOException {
//用默认编码表读写,出现乱码
FileReader fr = new FileReader("utf-8.txt");
FileWriter fw = new FileWriter("gbk.txt");
int c;
while((c = fr.read()) != -1) {
fw.write(c);
}
fr.close();
fw.close();
}
}
2,转换流图解
画图分析转换流
标签:字符,java,import,读写,io,new,close,JAVA,码表
来源: https://blog.csdn.net/Cricket_7/article/details/95076775
java 字符流 utf8,JAVA基础(字符流设置编码读写字符)相关推荐
- java文档表白_java基础io流——File的告白(重温经典)
File类概述和构造方法 File类的概述 文件和目录路径名的抽象表示形式 构造方法 public File(String pathname) public File(String parent,St ...
- java json设置编码_java-JSON字符编码
java-JSON字符编码 我的Java Web应用程序提交了一个AJAX请求,该请求返回JSON,例如: {'value': 'aériennes'} 当网页上显示"aériennes&q ...
- 字符在utf-8,gbk,gb2312,iso8859-1下的编码实验
一直以来对编码并不是太理解,所以用java做了个实验,感觉清楚了点: 下面这个代码的功能是,获取某个字符或汉字在utf-8,gbk,gb2312,iso8859-1等下的十六进制,八进制,十进制,二进 ...
- java中字符流和字节流的区别_java中字节流和字符流有哪些区别
java中字节流和字符流的区别有:1.定义不同:2.结尾不同:3.处理方式不同:4.缓冲区不同:5.编码方式不同.字节流默认不使用缓冲区,而字符流使用缓冲区.字节流采用ASCII编码,字符流采用uni ...
- day04--java高级编程:API:Object、String,Buffer、包装类、日期、java比较器、BigInteger、进制、length区别,IO流,路径,序列化id,编码
1 API 1.1 Api文档下载 1.API (Application Programming Interface,应用程序编程接口)是 Java 提供的基本编程接口,一切可以调用的东西都是API. ...
- JAVA语言基础-面向对象(IO:IO字符流、递归)
2019独角兽企业重金招聘Python工程师标准>>> 21.01_IO流(字符流FileReader) 1.字符流是什么 字符流是可以直接读写字符的IO流 字符流读取字符, 就要先 ...
- Java基础IO流概述、字符流、字节流、流操作规律、File类、Properties类、打印流、序列流
IO流:(Input Output)流 字符流的由来:其实就是字节流读取文字字节数据后,不直接操作而是先查指定的码表,获取对应的文字进行操作 简单说:字符流 = 字节流 + 编码表 字节流的两个顶层父 ...
- java基础 io流 字节流 字符流 节点流 包装流 转换流 缓冲流 对象流 打印流 Properties类
目录 1.概念 2.常用的文件操作 2.1 创建文件 2.2 获取文件相关信息 2.3 目录的操作和文件删除 3. IO流原理及流的分类 3.1 流的分类 4.InputStream 字节输入流 4. ...
- Java基础(17)——字节流、字符流
目录 第一章 IO概述 1.1 什么是IO 1.2 IO的分类 1.3 IO的流向说明图解 1.4 顶级父类们 第二章 字节流 2.1 一切皆为字节 2.2 字节输出流[OutputStream] 2 ...
最新文章
- 老板说“把系统升级到https”,我用一个脚本实现了,而且永久免费!
- 低调!中国北斗核心卫星部署完成,开启“全球时代”!超越GPS指日可待
- 深入 理解 Statement 和 PreparedStatement
- 无向图的邻接矩阵存储,4个顶点、4条边
- Google 机器学习应用的43条经验法则
- 安卓之实现一个简单的电话拨号功能
- 品运维自动化之cobbler的安装序
- 佛言:人有二十难(为)
- 《私募证券投资基金业绩报酬指引(征求意见稿)》
- 快速突破面试算法之数组与矩阵篇
- Spring boot微服务项目中上传图片报错,The field file exceeds its maximum permitted size of 1048576 bytes.
- 等保2.0基本要求与等保1.0对比解读
- 学ui需要了解html,学UI设计需要掌握文案知识吗
- 随便聊聊,关于大学,未来的规划
- 常用的函数:atoi,itoa,atof,_ttoi等
- 关于Synergy无法启动
- 那些年,我们一起参加过的高考
- ext 中checkbox 无法取消选中行,全选按钮全选问题
- office2010官方下载 免费完整版
- 2022年TIOBE指数排行,Python位居榜首
热门文章
- 人工智能ai 学习_人工智能中强化学习的要点
- 最详细的 IDEA调试教程
- TextArea里Placeholder换行问题
- Java 邮箱判断 正则表达式
- Python3之logging输出写入日志
- java日期用什么属性_java日期以及使用Java反射机制遍历实体类的属性和类型
- java 16进制整数,Java将整数转换为十六进制整数
- 太极计算机ehr系统,(数据科学学习手札21)sklearn.datasets常用功能详解
- php eurl.axd,Http异常eurl.axd出错信息解决方法
- java 开发详解_面向接口编程详解-Java篇