java流代码笔记

来源:互联网 发布:凯文淘宝店 编辑:程序博客网 时间:2024/06/14 07:14
这是一个复制字节并写出的流
import java.io.*;public class Dump {    public static void main(String[]args) {        try        {            dump( new FileInputStream("aaa.bmp"),                  new FileOutputStream("bbb.bmp"));        }        catch(FileNotFoundException fex)        {            fex.printStackTrace();        }        catch (IOException ioe)        {            ioe.printStackTrace();        }    }    public static void dump(InputStream src, OutputStream dest)    throws IOException    {        InputStream input = new BufferedInputStream(src);        OutputStream output = new BufferedOutputStream(dest);        byte[] data = new byte[1024]; //建立缓冲区        int length = -1;        while ((length = input.read(data)) != -1) {            output.write(data, 0, length);        }        input.close();        output.close();    }}
这是一个复制字符并且增加行号的程序
import java.io.*;public class CopyFileAddLineNumber {public static void main (String[] args) {String infname = "CopyFileAddLineNumber.java";String outfname = "CopyFileAddLineNumber.txt";if( args.length >= 1 ) infname = args[0];if( args.length >= 2 ) outfname = args[1];try {File fin = new File(infname);File fout = new File(outfname);BufferedReader in = new BufferedReader(new FileReader(fin));PrintWriter out  = new PrintWriter(new FileWriter(fout));int cnt = 0;// 行号String s = in.readLine();while ( s != null ) {cnt ++; s = deleteComments(s);//去掉以//开始的注释out.println(cnt + ": \t" + s );//写出s = in.readLine();//读入}in.close();// 关闭缓冲读入流及文件读入流的连接.out.close();} catch (FileNotFoundException e1) {System.err.println("File not found!" );} catch (IOException e2) {e2.printStackTrace();}}static String deleteComments( String s ) //去掉以//开始的注释{if( s==null ) return s;int pos = s.indexOf( "//" );if( pos<0 ) return s;return s.substring( 0, pos );}}
import java.io.*;class Person implements Serializable{    String name;    int age;    Person(String name, int age) {        this.name=name;        this.age=age;    }    public String toString() {        return name + "(" + age + ")";    }}public class SerializeDemo {    public static void main (String[] args)    throws IOException    {        Person [] ps = {            new Person("Li",18),            new Person("Wang",19)        };  String fileName = "s.temp";        //Serialize  ObjectOutputStream output = new ObjectOutputStream(            new FileOutputStream(fileName) );        for(Person p : ps) output.writeObject(p);        output.close();        //deserialize        ObjectInputStream input = new ObjectInputStream(            new FileInputStream(fileName) );        Person p = null;        try {            while( (p=(Person)input.readObject()) != null ) {                System.out.println(p);            }        } catch(ClassNotFoundException ex) {}        catch(EOFException eofex) {}        input.close();    }}


0 0