刚开始学习一点IO流,进行了一点简单的总结,分享出来。
IO流分为 字节流(**InputStream**、**OutputStream**)、
字符 流(**Reader**、**Writer**)两种。
1.**字节流**
字节流用途较广,可用于传输图片等所有的文件(包括二进制
文件)。字符也可使用字节流进行传输,只需要进行相应的包
装即可(*InputStreamReader*)。
2.**字符流**
字符流应用范围较小,仅可用于字符的传输。
3.
**字节流**(**InputStream**、**OutputStream**)和
**字符流**(**Reader**、**Writer**)本身都是抽象类,
无法直接生成实例。读写时使用其子类来完成读写操作。
例: **FileInputStream**
**FileOutputStream**
**FileReader**
**FileWriter**等等······
4.**字节流字符流的包装**
我们将IO流比作水管,则进行字节流字符流包装就相当于在水管
外面套了一层新的水管来达到传输其他数据类型的目的。
例:(**将字节流的键盘读取转换成字符流输出**)
**InputStream**比作最基本的水管,现在我们将其转换
成字符流的文件读取形式,需要将其套上一层水管,来达到
目的,这层水管就是**BufferedReader**
import java.io.*;
public class Student {
public static void main(String[] args) {
InputStream testOne = System.in;
BufferedReader accept = new BufferedReader(new InputStreamReader(testOne));
//以InputStreamReader为桥梁将testOne的内容传输进入字符流缓冲区,从而完成转换
String a = null;
try
//try catch是IO流中必须书写的
{
a = accept.readLine();
//读取accept缓冲区的内容,readLine()方法会从当前位置向下读取,知道遇到换行符才会停止
System.out.println(a);
//输出从缓冲区读取到的内容
}catch (IOException e)
{
}
}
}
希望对你能有帮助!加油!
菜鸟学习之简单的java-IO流及其转换
最新推荐文章于 2021-01-01 16:52:22 发布