黑马程序员:字符数组,字节数组,字符串的流对象

<span style="font-size:18px;"></span>

用于操作字节数组的流对象。

ByteArrayInoutStream:在构造的时候,需要接收数据源,而且是一个字节数组。

ByteArrayOutputStream:在构造的时候,不用定义数据目的,因为该对象中已经内部封装了一个可变常速的字节数组。

因为这两个流对象都操作的是数组,并没有使用系统资源,所以不用进行close关闭。

用于操作字符数组的流对象

CharArrayReader  CharArrayWriter

用于操作字符串的流对象

StringReader   StringWriter


 
  1. import java.io.*; 
  2. class ByteArrayStreamDemo  
  3.     publicstatic void main(String[] args)throws IOException 
  4.     {    
  5.         charArray(); 
  6.         byteArray(); 
  7.         stringArray(); 
  8.     } 
  9.     字节数组的流对象 
  10.     publicstatic void byteArray()throws IOException 
  11.     { 
  12.         //数据源 
  13.         ByteArrayInputStream bis = new ByteArrayInputStream("sjdjafjdasjf".getBytes()); 
  14.         //数据目的 
  15.         ByteArrayOutputStream bos = new ByteArrayOutputStream(); 
  16.  
  17.  
  18.         int by = 0
  19.         while((by=bis.read())!=-1
  20.         { 
  21.             bos.write(by); 
  22.         } 
  23.         System.out.println(bos.size()); 
  24.         System.out.println(bos.toString()); 
  25.         //把bos中的数据写到字节输出流中,可以写入文件中,注意处理异常。 
  26.         bos.writeTo(new FileOutputStream("a.txt")); 
  27.     } 
  28.     //字符数组的流对象 
  29.     publicstatic void charArray()throws IOException 
  30.     { 
  31.         CharArrayReader car = new CharArrayReader("sdfdasfasfas".toCharArray()); 
  32.         CharArrayWriter caw = new CharArrayWriter(); 
  33.         int len =0
  34.         while((len = car.read())!=-1
  35.         { 
  36.             caw.write(len); 
  37.         } 
  38.         System.out.println(caw.size()); 
  39.         System.out.println(caw);     
  40.     } 
  41.     //字符串的流对象 
  42.     publicstatic void stringArray()throws IOException 
  43.     { 
  44.         StringReader sr = new StringReader("阿什飞"); 
  45.         StringWriter sw = new StringWriter(); 
  46.         int len = 0
  47.         while((len = sr.read())!=-1
  48.         { 
  49.             sw.write(len); 
  50.         } 
  51.         System.out.println(sw); 
  52.     } 
<span style="font-size:18px;">import java.io.*;
class ByteArrayStreamDemo 
{
	public static void main(String[] args) throws IOException
	{	
		charArray();
		byteArray();
		stringArray();
	}
	字节数组的流对象
	public static void byteArray()throws IOException
	{
		//数据源
		ByteArrayInputStream bis = new ByteArrayInputStream("sjdjafjdasjf".getBytes());
		//数据目的
		ByteArrayOutputStream bos = new ByteArrayOutputStream();


		int by = 0;
		while((by=bis.read())!=-1)
		{
			bos.write(by);
		}
		System.out.println(bos.size());
		System.out.println(bos.toString());
		//把bos中的数据写到字节输出流中,可以写入文件中,注意处理异常。
		bos.writeTo(new FileOutputStream("a.txt"));
	}
	//字符数组的流对象
	public static void charArray()throws IOException
	{
		CharArrayReader car = new CharArrayReader("sdfdasfasfas".toCharArray());
		CharArrayWriter caw = new CharArrayWriter();
		int len = 0;
		while((len = car.read())!=-1)
		{
			caw.write(len);
		}
		System.out.println(caw.size());
		System.out.println(caw);	
	}
	//字符串的流对象
	public static void stringArray()throws IOException
	{
		StringReader sr = new StringReader("阿什飞");
		StringWriter sw = new StringWriter();
		int len = 0;
		while((len = sr.read())!=-1)
		{
			sw.write(len);
		}
		System.out.println(sw);
	}
}</span>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值