package cn.sasa.demo4;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter; public class OutputStreamWriterDemo {
public static void main(String[] args) throws IOException {
/**
* FileWriter 不能指定字符编码
*
* 用OutputStreamWriter
* 将字符流转成字节流
*
*/
// writeGBK();
//writeUTF8();
//readGBK();
readUTF8();
} static void writeGBK() throws IOException {
//1、创建一个FileOutputStream,绑定目的
FileOutputStream output = new FileOutputStream("d:/sasa/test1225.txt"); //2、创建一个OutputStreamWriter,指定字符编码,
//构造函数的第二个字符串参数指定字符编码,不写默认是系统的默认编码GBK
OutputStreamWriter writer = new OutputStreamWriter(output); //3、调用write
writer.write("你好");
writer.flush();
writer.close();
} static void writeUTF8() throws IOException {
FileOutputStream output = new FileOutputStream("d:\\sasa\\utf.txt");
OutputStreamWriter writer = new OutputStreamWriter(output, "UTF-8");
writer.write("啦啦啦");
writer.flush();
writer.write("你好");
writer.flush();
writer.close();
} static void readGBK() throws IOException {
FileInputStream input = new FileInputStream("d:\\sasa\\test1225.txt");
InputStreamReader reader = new InputStreamReader(input);
char[] charArr = new char[1024];
@SuppressWarnings("unused")
int len = 0;
while((len = reader.read(charArr)) != -1) {
System.out.print(new String(charArr));
}
reader.close();
} static void readUTF8() throws IOException {
FileInputStream input = new FileInputStream("d:\\sasa\\utf.txt");
InputStreamReader reader = new InputStreamReader(input , "UTF-8");
char[] charArr = new char[1024];
@SuppressWarnings("unused")
int len = 0;
while((len = reader.read(charArr)) != -1) {
System.out.print(new String(charArr));
}
reader.close();
}
}

java 字符转换流的更多相关文章

  1. Java IO 转换流 字节转字符流

    Java IO 转换流 字节转字符流 @author ixenos 字节流 输入字节流:---------| InputStream 所有输入字节流的基类. 抽象类.------------| Fil ...

  2. Java第三十三天,IO操作(续集),字符转换流

    计算机都是以二进制码格式存储文件的,但是在读写文件的过程中,每个应用程序都有自己的编码格式.FileWrite和FileRead类是通过查询系统默认码表进行读写的,因此在自己的系统上能够实现编码的智能 ...

  3. Day17_103_IO_InputStreamReader 字符转换流

    InputStreamReader 字符转换流 * import java.io.InputStreamReader; 将字节输入流转换为字符输入流 * import java.io.OutputSt ...

  4. 【转载】Java IO 转换流 字节转字符流

    字节流输入字节流:---------| InputStream 所有输入字节流的基类. 抽象类.------------| FileInputStream 读取文件的输入字节流.----------- ...

  5. [Java] 使用转换流来处理标准输入

    package test.stream; import java.io.BufferedReader; import java.io.IOException; import java.io.Input ...

  6. [19/04/02-星期二] IO技术_字符流分类总结(含字符转换流InputStreamReader/ OutputStreamWriter,实现字节转字符)

    一.概念 ------->1.BufferedReader/BufferedWriter [参考19.03.31文章] *Reader/Writer-------->2.InputStre ...

  7. JAVA-IO操作,字节-字符转换流

    掌握OutputStreamWriter和InputStreamReader类的作用 一般操作输入输出内容的时候,就需要使用字节或字符流,但是,有些时候,需要将字符流变成字节流形式,或者字节流变成字符 ...

  8. Java 之 转换流

    一.字符编码和字符集 二.编码引发的问题 当我们使用 UTF-8 编码保存文件时,用 UTF-8 再次读取不会出现任何问题.但是,当使用其他的编码(如GBK)读取文件时,就会出现乱码现象. Demo: ...

  9. JAVA IO分析一:File类、字节流、字符流、字节字符转换流

    因为工作事宜,又有一段时间没有写博客了,趁着今天不是很忙开始IO之路:IO往往是我们忽略但是却又非常重要的部分,在这个讲究人机交互体验的年代,IO问题渐渐成了核心问题. 一.File类 在讲解File ...

随机推荐

  1. STM32 多通道ADC采样,采用Timer1进行采样率控制,利用DMA进行传输

    http://blog.csdn.net/varding/article/details/17559399 http://www.51hei.com/stm32/3842.html https://w ...

  2. Git常见报错及解决方案

    报错一: You have not concluded your merge (MERGE_HEAD exists). Please, commit your changes before you c ...

  3. react实现多行文本超出加省略号

    http://www.css88.com/archives/5206 overflow : hidden; text-overflow: ellipsis; display: -webkit-box; ...

  4. 问题:UltraISO:这个软件有问题,它制作的iso文件会造成无法正确识别。用PowerISO吧

    最近研究硬盘安装 centos7.6 (rhel 7.6)的 硬盘安装,因为原版dvd超过4G了,所以通过删除java-open-jdk的方式减少dvd光盘的大小. 但是前期用UltraISO制作的i ...

  5. spring boot 2整合swagger-ui

    1.添加mvn依赖 修改pom.xml加入 <dependency> <groupId>io.springfox</groupId> <artifactId& ...

  6. 5 -- Hibernate的基本用法 --5 2 持久化对象的状态

    1. 瞬态 : 对象有new操作符创建,且尚未与Hibernate Session关联的对象被认为处于瞬态.瞬态对象不会被持久化到数据库中,也不会被赋予持久化标识.如果程序中失去了瞬态对象的引用,瞬态 ...

  7. 【代码审计】大米CMS_V5.5.3 任意文件删除及代码执行漏洞分析

      0x00 环境准备 大米CMS官网:http://www.damicms.com 网站源码版本:大米CMS_V5.5.3试用版(更新时间:2017-04-15) 程序源码下载:http://www ...

  8. MangoDB学习笔记

    01. 数据库操作 1. 查看当前数据库名称 db 2. 查看所有数据库名称,列出所有在物理上存在的数据库 show dbs; 3. 切换数据库,如果数据库不存在也并不创建,直到插入数据或创建集合时数 ...

  9. PHP在linux读取word文档

    几天帮朋友解决一个技术问题,在Linux下,将word文档中的内容读取,然后使用正则匹配,拼成sql入库 查阅了外文资料和google之后,步骤如下: #wget http://www.winfiel ...

  10. ubuntu部署git

    先更新本机内置的程序. sudo apt-get updatesudo apt-get upgrade再判断系统是否内置了add-apt-repository命令,如果没有执行下列命令安装 sudo ...