InputStreamReader

InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。

每次调用 InputStreamReader 中的一个 read() 方法都会导致从底层输入流读取一个或多个字节。要启用从字节到字符的有效转换,可以提前从底层流读取更多的字节,使其超过满足当前读取操作所需的字节。

为了达到最高效率,可要考虑在 BufferedReader 内包装 InputStreamReader。例如:

BufferedReader in

= newBufferedReader(new InputStreamReader(System.in));

时间: 2024-10-10 16:11:40

InputStreamReader的相关文章

Java基础知识强化之IO流笔记35:InputStreamReader/OutputStreamWriter 复制文本文件案例01

1. 需求:把当前项目目录下的a.txt内容复制到当前项目目录下的b.txt中. 数据源:  a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader 目的地:  b.txt -- 写出数据 -- 字符转换流 -- OutputStreamWriter InputStreamReader/OutputStreamWriter不仅是转换流(将字节流转换为字符流),也是字符流Reader/Writer的具体实现子类. 2.代码示例: 1 package cn.itcas

转换流--InputStreamReader ,OutputStreamWriter

BufferedReader 字符流,只能装饰字符流,不能装饰字节流.有个重要且好用的方法是readLine()整行读取字符. 但是InputStream是字节流,没有resdLine方法,那么字节流InputStream如何使用readLine方法呢??? 如果能把字节流转换成字符流就可以使用BufferedReader装饰流.也就可以使用readLine方法. 把字节流转换成字符流,或者把字符流转为字节流    称为转换流: InputStreamReader(前缀是功能,后缀是体系):字节

InputStreamReader 和FileReader的区别

InputStreamReader 和 BufferedReader .其中最重要的类是 InputStreamReader ,它是字节转换为字符的桥梁. 你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如 GBK 等. FileReader 与 InputStreamReader 涉及编码转换 ( 指定编码方式或者采用 os 默认编码 ) ,可 能在不同的平台上出现乱码现象!而 FileInputStream 以二进制方式处理,不会出现乱码现象 . FileI

转换流——OutputStreamWriter类与InputStreamReader类

字节流和字符流的转换类 OutputStreamWriter:是Writer的子类,将输出的字符流变成字节流 InputStreamReader:是Reader的子类,将输入的字节流变成字符流 将字节输出流变成字符输出流 //================================================= // File Name : OutputStreamWriter_demo //----------------------------------------------

InputStream、InputStreamReader和Reader的关系

InputStream:得到的是字节输入流,InputStream.read("filename")之后,得到字节流 Reader:读取的是字符流 InputStreamReader:从字节到字符的桥梁.InputStreamReader(InputStream.read("filename")); reader.read(InputStreamReader(InputStream in));便可从字节变为字符,打印显示了. java.io.Reader 和 jav

转换流: InputStreamReader 和 OutputStreamWriter

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

Java IO: InputStreamReader和OutputStreamWriter

作者: Jakob Jenkov 译者: 李璟([email protected]) 本章节将简要介绍InputStreamReader和OutputStreamWriter.细心的读者可能会发现,在之前的文章中,IO中的类要么以Stream结尾,要么以Reader或者Writer结尾,那这两个同时以字节流和字符流的类名后缀结尾的类是什么用途呢?简单来说,这两个类把字节流转换成字符流,中间做了数据的转换,类似适配器模式的思想. InputStreamReader 原文链接 InputStream

Java 之 FileReader FileInputStream InputStreamReader BufferedReader 作用与区

ava.io下面有两个抽象类:InputStream和Reader InputStream是表示字节输入流的所有类的超类Reader是用于读取字符流的抽象类InputStream提供的是字节流的读取,而非文本读取,这是和Reader类的根本区别.即用Reader读取出来的是char数组或者String ,使用InputStream读取出来的是byte数组.弄清了两个超类的根本区别,再来看他们底下子类的使用,这里只对最常用的几个说明 InputStream    | __FileInputStre

转换流InputStreamReader、OutputStreamWriter

InputStreamReaderDemo: 1 import java.io.*; 2 //为方便演示便省略异常处理. 3 class SystemDemo2 4 { 5 public static void main(String[] args)throws IOException 6 { 7 InputStream in = System.in; 8 InputStreamReader ins = new InputStreamReader(in); 9 BufferedReader bu

java 字节流和字符流转换类InputStreamReader,OutPutStreamReader

import java.io.*; public class BufferDemo { public static void main(String[] args) throws IOException { BufferedReader buf=null; buf=new BufferedReader(new InputStreamReader(System.in)); System.out.print("Please enter a number:"); String str=buf