转换流:字节输入流转换成字符输入流 InputStreamReader

 /*
 * 将字节输入流变成字符输入流     类 InputStreamReader
 * 构造方法:
 * InputStreamReader(InputStream in)
          创建一个使用默认字符集的 InputStreamReader。
          常用方法:
    方法摘要
 void    close()
          关闭该流并释放与之关联的所有资源。
 String    getEncoding()
          返回此流使用的字符编码的名称。
 int    read()
          读取单个字符。
 int    read(char[] cbuf, int offset, int length)
          将字符读入数组中的某一部分。
 boolean    ready()
          判断此流是否已经准备好用于读取。
 *
 */

package intputstreamreader.com;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.Reader;

public class InputStreamReaderDemo {
    public static void main(String[] args){
        //指定一个路径
        File f = new File("d:"+File.separator+"test.txt");
        try {

            //利用转换流,将字节输入流变成字符输入流,并用字符接收
            Reader ipr = new InputStreamReader(new FileInputStream(f));
            char [] ch = new char[(int) f.length()];
            ipr.read(ch);
            ipr.close();
            for (int i = 0; i < ch.length; i++) {
                 System.out.print(ch[i]);
            }

        } catch (Exception e) {
            // TODO: handle exception
        }

    }

}
时间: 2024-11-15 04:34:13

转换流:字节输入流转换成字符输入流 InputStreamReader的相关文章

Java IO 转换流 字节转字符流

Java IO 转换流 字节转字符流 @author ixenos 字节流 输入字节流:---------| InputStream 所有输入字节流的基类. 抽象类.------------| FileInputStream 读取文件的输入字节流.------------| BufferedInputStream 缓冲输入字节流. 该类内部其实就是维护了一个8kb(8192b)字节数组而已. 该类出现的目的是为了提高读取文件数据的效率. 输出字节流:---------| OutputStream

Java 基础 IO流(转换流,缓冲)

一,前言 在学习字符流(FileReader.FileWriter)的时候,其中说如果需要指定编码和缓冲区大小时,可以在字节流的基础上,构造一个InputStreamReader或者OutputStreamWriter,这又是什么意思呢 二,转换流 2.1 OutputStreamWriter类 查阅OutputStreamWriter的API介绍,OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流中的字符编码成字节.它的作用的就是,将字符串按照指

Java IO学习笔记(三)转换流、数据流、字节数组流

转换流 1.转换流:将字节流转换成字符流,转换之后就可以一个字符一个字符的往程序写内容了,并且可以调用字符节点流的write(String s)方法,还可以在外面套用BufferedReader()和BufferedWriter,并使用它们的readLine 和 newLine方法. 2.有两种转换流:InputStreamReader.OutputStreamWriter 练习小程序1: package test.io.transfer; import java.io.FileOutputSt

转换流以及流规律总结

 转换流: 上边读取键盘录入的代码,与BufferedReader的readLine()方法很相似,那么能不能用readLine()来代替?因为System.in是字节流,它要使用字符流缓冲区的方法,这就需要使用到两个转换流:InputStreamReader和OutputStreamWriter. package tan; import java.io.*; public class TranStreamDemo { public static void main(String[] args)

转换流: InputStreamReader 和 OutputStreamWriter

/* * 1.转换流: InputStreamReader 和 OutputStreamWriter 一对. * * 1) InputStreamReader 字节转换成字符的一个输入流,最后,以字符方式读取数据. * OutputStreamWriter 字符转换成字节的一个输出流,最后,以字节方式输出数据. * * 2) 功能: 当给的类型数据与要的类型数据不一致时,需要进行转换. * 另一个功能: 可以为输入/输出指定字符编码集,从而以指定的字符编码集实现数据存盘管理或读取相应字符编码集的

【幻化万千戏红尘】qianfengDay19-java基础学习:转换流、对象流、打印流、三大标准(重定向)

课程回顾: 流:数据通信的管道常用的流类:1.文件流:File:数据在文件中 1.FileInputStream 2.FileOutputStream 3.FileReader 4.FileWriter2.内存流:ByteArray:数据在内存中(数组) 1.ByteArrayInputStream 2.ByteArrayOutputStream3.缓冲流:Buffered:提高读写效率 1.BufferedInputStream 2.BufferedOutputStream 3.Buffere

JAVA 打印流与转换流

转换流主要有两个 InputStreamReader 和 OutputStreamWriter 1. InputStreamReader 主要是将字节流输入流转换成字符输入流 2. OutputStreamWriter 主要是将字节流输出流转换成字符输出流 打印流主要包含两个:PrintStream 和 PrintWriter,分别对应字节流和字符流 完成屏幕打印的重定向 System.out 对应的就是 PrintStream , 默认在输出在控制台,我们可以重定向他的输出,可以定向到文件 也

转换流

IO中的流分为字节流和字符流[转换流只有从字节流转换为字符流的类,没有字符流转换成字节流的类] 转换流的类InputStreamReader和OutputStreamWriter [字节流]任何时候都可以用 [字符流]仅限于文本文件 什么时候用转换流: 当我们的字节流指向一个文本文件,我们用转换流将其转换为字符流会更加方便操作 static void testOutputStreamWriter() { //指向文档的字节输入流 try (InputStream in = new FileInp

第二十五节(转换流,打印流)

转换流主要有两个 InputStreamReader 和 OutputStreamWriter 1. InputStreamReader 主要是将字节流输入流转换成字符输入流 2. OutputStreamWriter 主要是将字节流输出流转换成字符输出流 InputStreamReader: OutputStreamWriter /* InputStreamReader 主要是将字节流输入流转换成字符输入流 */ import java.io.*; public class InputStre