黑马程序员--打印流、序列输入流、Vector 类
--------- android培训、java培训、期待与您交流! ---------
1 打印流
打印流:
该流提供了打印方法,可以将各种数据类型的数据都原样打印。
字节打印流:
PrintStream
构造函数可以接收的参数类型:
1,file对象。File
2,字符串路径。String
3,字节输出流。OutputStream
字符打印流:
PrintWriter
构造函数可以接收的参数类型:
1,file对象。File
2,字符串路径。String
3,字节输出流。OutputStream
4,字符输出流,Writer。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
import java.io.*; class PrintStreamDemo { public static void main(String[] args) throws IOException { BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in)); PrintWriter out = new PrintWriter(new FileWriter("a.txt"),true); String line = null; while((line=bufr.readLine())!=null) { if("over".equals(line)) break; out.println(line.toUpperCase()); //out.flush(); } out.close(); bufr.close(); } }
2 SequenceInputStream类介绍
- public class SequenceInputStream
- extends InputStream
“序列输入流”类允许应用程序把几个输入流连续地合并起来,并且使它们像单个输入流一样出现。
每个输入流依次被读取,直到到达该流的末尾。然后“序列输入流”类关闭这个流并自动地切换到下一个输入流。
构造方法
SequenceInputStream(Enumeration)创建一个新的序列输入流,并用指定的输入流的枚举值初始化它。
SequenceInputStream(InputStream, InputStream)创建一个新的序列输入流,初始化为首先 读输入流 s1
, 然后读输入流 s2
。
3 Vector类
Vector
类实现了可动态扩充的对象数组。类似数组,它包含的元素可通过数组下标来访问。
常用方法:
boolean add(E e) 将指定元素添加到此向量的末尾。
void add(int index, E element) 在此向量的指定位置插入指定的元素
Enumeration<E> elements() 返回此向量的组件的枚举。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
import java.io.*; import java.util.*; class SequenceDemo { public static void main(String[] args) throws IOException { Vector<FileInputStream> v = new Vector<FileInputStream>(); v.add(new FileInputStream("c:\\1.txt")); v.add(new FileInputStream("c:\\2.txt")); v.add(new FileInputStream("c:\\3.txt")); Enumeration<FileInputStream> en = v.elements(); SequenceInputStream sis = new SequenceInputStream(en); FileOutputStream fos = new FileOutputStream("c:\\4.txt"); byte[] buf = new byte[1024]; int len =0; while((len=sis.read(buf))!=-1) { fos.write(buf,0,len); } fos.close(); sis.close(); } }
--------- android培训、java培训、期待与您交流! ----------