黑马程序员--打印流、序列输入流、Vector 类

--------- android培训java培训期待与您交流 ---------

1 打印流

 

打印流:
该流提供了打印方法,可以将各种数据类型的数据都原样打印。

 

字节打印流:
PrintStream
构造函数可以接收的参数类型:
1,file对象。File
2,字符串路径。String
3,字节输出流。OutputStream

 

 

 

字符打印流:
PrintWriter
构造函数可以接收的参数类型:
1,file对象。File
2,字符串路径。String
3,字节输出流。OutputStream
4,字符输出流,Writer。

打印流
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() 返回此向量的组件的枚举。

类使用示例
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培训期待与您交流 ----------

 

                             详细请查看:http://edu.csdn.net/heima/

posted on 2012-08-10 14:41  doublewinwin  阅读(217)  评论(0编辑  收藏  举报