内存流 数据流 打印流的简单使用

本文详细介绍了Java中内存操作流的使用方法,包括字节数组、字符数组及字符串的操作;数据输入输出流的功能及其如何处理基本数据类型的读写;以及打印流的特点和用法,特别强调了其自动刷新功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.  内存操作流:用来处理临时存储信息的,程序结束,数据就从内存中消失
  字节数组:(字节流)
ByteArrayInputStream
ByteArrayInputStream(byte[] buf) 创建一个 ByteArrayInputStream,使用 buf 作为其缓冲区数组。
  ByteArrayOutputStream
  字符数组:(字符流)
  CharArrayReader
  CharArrayReader(char[] buf)  根据指定的 char 数组创建一个 CharArrayReader。
   CharArrayWriter
  字符串:(字符流)
   StringReader
   StringReader(String s) 创建一个新字符串 reader。

  StringWiter

	//写数据:
	ByteArrayOutputStream baos=new ByteArrayOutputStream();
	baos.write("hello,world".getBytes());
	baos.write("java".getBytes());
	//将数据转成字节数组
	byte []bys=baos.toByteArray();
	ByteArrayInputStream bais=new ByteArrayInputStream(bys);
        int len=0;
	while((len=bais.read())!=-1){
		System.out.print((char)len);
	}
2. 数据输入流: 可以读些基本数据类型的数据
  DataInputStream
  DataInputStream(InputStream in)
 DataOutputStream
DataOutputStream(OutputStream out)

        //数据输出流:用来写数据
	DataOutputStream dos=new DataOutputStream(new FileOutputStream("a.txt"));
	//写数据
	dos.write(20);
	dos.writeInt(25);
	dos.writeFloat(2.03F);
	//数据输入流,用来读数据
	DataInputStream dis=new DataInputStream(new FileInputStream("a.txt"));
	int a=dis.read();
	int s=dis.readInt();
	float f=dis.readFloat();
	dos.close();
	dis.close();
3. 打印流:可以操作任意类型的数据
  字节打印流:PrintStream
  字符打印流:PrintWriter
3.1 打印流的特点:
  只有写数据的,没有读数据的,只能操作目的地,不能操作数据源
  可以操作任意类型的数据
  如果启动了自动刷新,能够自动刷新
该流是可以直接操作文本文件的

	//创建字符打印流对象
	PrintWriter pw=new PrintWriter(new FileWriter("b.txt"),true);
	pw.println(100);
	pw.println("学习");
	pw.println(true);
	pw.close();
        打印流的自动刷新功能
  PrintWriter pw=new PrintWriter(new FileWriter("b.txt"),true);  +    使用println()方法  ,  并且实现了数据的换行

3.2  println()方法等价于:
bw.write();
bw.newLine();
  bw.flush();



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值