标准输入输出流OutputStreamWriter:将字节输出流转换为字符输出流InputStreamReader:将字节输入流转换为字符输入流打印流添加输出数据的功能ObjectInputStrea

1.1 标准输入输出流

public static final InputStream in:标准输入流

public static final PrintStream out:标准输出流

OutputStreamWriter:将字节输出流转换为字符输出流

public class OutputStreamWriterDemo {

public static void main(String[] args) throws IOException   {

//method2();

 

//创建输入流对象

BufferedReader br = new BufferedReader(new FileReader("SystemInOutDemo.java"));

//创建输出流对象

//OutputStream os = System.out;

//Writer w = new OutputStreamWriter(System.out);//多态,父类型引用指向子类对象

//BufferedWriter bw = new BufferedWriter(w);

 

BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

 

 

//进行数据的读写

String line;//用于存储读取到的数据

while((line = br.readLine()) != null) {

bw.write(line);

bw.newLine();

}

 

InputStreamReader:将字节输入流转换为字符输入流

public class InputStreamReaderDemo {

public static void main(String[] args) throws IOException  {

//创建输入流对象

InputStream is = System.in;

Reader r = new InputStreamReader(is);

//创建输出流对象

FileWriter fw = new FileWriter("a.txt");

 

//读写数据

char[] chs = new char[1024];

int len;

while((len = r.read(chs)) != -1) {

fw.write(chs,0,len);

fw.flush();

}

1.2 打印

打印流添加输出数据的功能,使它们能够方便地打印各种数据值表示形式.

字符打印流 PrintWriter

void print(String str): 输出任意类型的数据,

void println(String str): 输出任意类型的数据,自动写入换行操作

* PrintStream

* PrintWriter

* 可以自动换行,println()

* 不能输出字节,但是可以输出其他任意类型

* 通过某些配置,可以实现自动刷新(只有在调用 printlnprintf  format才有用)* 也是包装流,不具备写出功能

* 可以把字节输出流转换成字符输出流*

* 注意:只能输出不能输入

public class PrintWriterDemo {

public static void main(String[] args) throws IOException  {

//创建打印流对象

PrintWriter pw = new PrintWriter("b.txt");

 

//写出数据

pw.write("hello");

pw.write("world");

pw.write("java");

 

1.3 ObjectInputStream 称为 反序列化流,利用输入流从文件中读取对象

ObjectOutputStream 称为 序列化,利用输出流向文件中写入对象

特点:用于操作对象。可以将对象写入到文件中,也可以从文件中读取对象。

}

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值