io(字符流)

关于字节流乱码问题:OutputStreamWriter

 

package ioChar;

import org.junit.Test;

import javax.annotation.processing.Filer;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;

public class CharStream {
//字符流
@Test
public void charS() throws Exception {
//建立输出流
FileWriter fileWriter = new FileWriter("h:\\java.txt");
//写入数据
fileWriter.write("this is ");
//关闭连接
fileWriter.close();

//BufferedWriter
//建立输出流
FileWriter fileWriter1 = new FileWriter("h:\\java.txt");
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter1);
//写数据
bufferedWriter.write("thiidllda daadas kk");
//关闭连接
bufferedWriter.close();
fileWriter.close();


//FileReader
//建立输入流
FileReader fileReader = new FileReader("h:\\java.txt");
//read data
// while ( (fileReader.read())!=-1){
// System.out.println((char)fileReader.read());
// }

//BufferedReader
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line = null;
while ((line = (bufferedReader.readLine())) != null) {
System.out.println(line);//整行读取
}
bufferedReader.close();
fileReader.close();
}
}

package com.zrm.io;

import org.junit.Test;

import java.io.*;

public class ByteLuan {
//处理字节流乱码问题
@Test
public void doLuanMa() throws IOException {
//创建流
FileOutputStream fio = new FileOutputStream("h:\\java.txt", true);
OutputStreamWriter osw = new OutputStreamWriter(fio, "utf-8");
//写数据
osw.write("java is the best ");
osw.write("中国是最强大的");
//关闭流
osw.close();
fio.close();

//读取数据
//创建流
FileInputStream fis = new FileInputStream("h:\\java.txt");
InputStreamReader isr = new InputStreamReader(fis, "utf-8");
//read
char[] car = new char[1024];
int len = 0;
while ((len = isr.read(car)) != -1) {
System.out.println(len);
}
//关闭流
isr.close();
fis.close();
}
}

转载于:https://www.cnblogs.com/zrmj/p/11427428.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值