首页 > 其他分享 >00022.12 [第三种]转换流:OutputStreamWriter

00022.12 [第三种]转换流:OutputStreamWriter

时间:2023-02-20 12:33:34浏览次数:39  
标签:编码 OutputStreamWriter 字节 fos 第三种 00022.12 str io


系列文章目录

文章目录

  • ​​系列文章目录​​
  • ​​前言​​
  • ​​一、OutputStreamWriter​​
  • ​​代码​​

前言

接上一篇InputStreamReader

00022.12 [第三种]转换流:OutputStreamWriter_java

一、OutputStreamWriter

此篇

编码 : 字符–>字节(字符转为字节)

00022.12 [第三种]转换流:OutputStreamWriter_编码_02


00022.12 [第三种]转换流:OutputStreamWriter_编码_03


乱码了

怎么解决呢?

00022.12 [第三种]转换流:OutputStreamWriter_OutputStream_04


所以存文本的时候还要考虑编码

解决方式一

00022.12 [第三种]转换流:OutputStreamWriter_写入文件_05


除了用String的编码还可以用OutputStreamWriter

方式二: OutputStreamWriter

00022.12 [第三种]转换流:OutputStreamWriter_java_06


注意:这里的编码解码都是纯文本文件

代码

package com.atguigu.test08;

import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;

import org.junit.Test;

/*
* 编码:字符--》字节
* 把字符流转为字节流的转换流
* OutputStreamWriter:
* 把字符流转为字节流,并且可以指定编码
*/
public class TestOutputStreamWriter {
@Test
public void test03()throws IOException{
//当前平台是UTF-8,文件是GBK
//String:编码的方法 getBytes()
//编码:字符--》字节
String str = "柴老师永远18岁!永远美丽";
FileOutputStream fos = new FileOutputStream("d:/io.txt");
OutputStreamWriter oos = new OutputStreamWriter(fos, "GBK");

oos.write(str);//数据: str(字符)-->oos(字符)按照GBK编码为字节流-->fos --> io.txt

oos.close();
fos.close();
}


@Test
public void test02()throws IOException{
//当前平台是UTF-8,文件是GBK
//String:编码的方法 getBytes()
//编码:字符--》字节
String str = "柴老师永远18岁!";
FileOutputStream fos = new FileOutputStream("d:/io.txt");
fos.write(str.getBytes("GBK"));
fos.close();
}


@Test
public void test01()throws IOException{
//当前平台是UTF-8,文件是GBK
String str = "柴老师永远18岁!";

FileWriter fw = new FileWriter("d:/io.txt");
fw.write(str);
fw.close();
}
}


标签:编码,OutputStreamWriter,字节,fos,第三种,00022.12,str,io
From: https://blog.51cto.com/u_15800767/6068303

相关文章

  • 00022.12 [第三种]转换流:InputStreamReader
    转换流:InputStreamReader目录文章目录​​转换流:InputStreamReader目录​​​​一、是什么?​​一、是什么?解码:字节输入流转字符输入流的转换流(稍微有点拗口)下面看怎么用不......
  • Java基础知识点(if语句的第二种和第三种)
    一:if语句的第二种格式1.格式:if(关系表达式){语句体1;​}else{语句体2;}2.执行流程:1.首先计算关系表达式的值。2.如果关系表达式的值为true,就执行语句体1.3.如果关系表达式的值......
  • if结果的第三种用法
    packagecom.itheima.test;importjava.util.Scanner;publicclassTest6{publicstaticvoidmain(String[]args){//商品的价格/*......
  • OutputStreamWriter
    OutputStreamWriter/**Copyright(c)1996,2013,Oracleand/oritsaffiliates.Allrightsreserved.*ORACLEPROPRIETARY/CONFIDENTIAL.Useissubjecttoli......
  • 转换流InputStreamReader OutputStreamWriter
    【1】转换流:作用:将字节流和字符流进行转换【2】转换流属于字节流还是字符流?输入字符流InputStreamReader:字节输入流----》字符的输入流OutputStreamWriter:字符的输出流......
  • Java IO流--转换流InputStreamReader和OutputStreamWriter的使用
    博主前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住也分享一下给大家,......
  • 525多表查询子查询的两种情况和526子查询的第三种情况
    子查询不同情况子查询的结果是单行单列的子查询作为条件,使用运算符去判断查询员工工资小于平均工资的人SELECT*FROMempWHEREemp.salary<(SELECTAVG(salary)FRO......
  • FileInputStream,OutputStreamWriter
    packagecom.gao.IO;importjavax.xml.stream.FactoryConfigurationError;importjava.io.*;publicclassTest06{publicstaticvoidmain(String[]args)thr......