欢迎使用CSDN-markdown编辑器

来源:互联网 发布:ccd视觉编程软件 编辑:程序博客网 时间:2024/06/04 01:03

File不仅可以描述文件,也可以描述文件夹

File

public static void main(String[] args){File f2=new File("d:\\abc");boolean b=f2.exists();}

时间单位毫秒,自1970.1.1起,long类型
String[] list()返回文件夹

public static void main(String[] args){File f2=new File("d:\\abc");String[] sa=f2.list();for(int i=0;i<sa.length;i++){    File child=new File(f2.sa[i]);    if(child.isFile()){    }    else if(child.isDirectory()){    }    }    File[] children=f.listFiles();RandomAccessFile raf=new RandomAccessFile("a");raf.writeInt(5);raf.writeDouble(3.14);int r=raf.readInt();r=Integer.reverseByte(r);raf.seek(100);}

InputStream,OutputStream读一个一个字节
抽象类
流操作是顺序的单向的

read有三个参数
()
(byte[])
(byte[],int offset,int length)

Reader,Writer文本数据,读一个一个char

FileInputStreamByteArrayInputStreamByteArrayOutputStream返回值byte数组FilterInputStream一切处理流的父类DataInputStreamObjectInputStreamSerializable

节点流,和外部数据打交道

FileOutputStream fos=new FileOutputStream("a.dat");int i=8976;fos.write(i);fos.write(i>>8);fos.write(i>>16);fos.write(i>>24);fos.close();

处理流,和流打交道,对其他的流进行额外的加工转换(看构造函数就能区分处理流和节点流了)

FileOutputStream fos=new FileOutputStream("a.dat");int i=8976;fos.write(i);fos.write(i>>8);fos.write(i>>16);fos.write(i>>24);fos.close();

DataInputStream

流链接 stream chaining

FileInputStream fis=new FileInputStream("a.dat");BufferedInputStream bis=new BufferedInputStream(fis);DataInputStream dis=new DataInputStream(bis);int i=dis.readInt();double d=dis.readDouble();FileOutputStream fos=new FileOutputStream("a.dat");DataOutputStream dos=new DataOutputStream(fos);fos.writeInt(5);dos.close();fos.close();

ObjectInputStream

public class Student implement Cloneable,java.io.Serializable{}//Serializable序列化Student s1=new Student();s1.age=16;s1.id="001";//这里是深复制!对象聚合的数据也都复制了!FileOutputStream fos=new FileOutputStream("a.dat");ObjectOutputstream oos=new ObjectOutputStream(fos);oos.writeObject(s1);oos.close();fos.close();

Serializable序列化,把对象变成序列化(变成一个字节一个字节)传输,类只有实现这个接口的才可以被序列化,同时这个类所聚合的其他的类也都要实现序列化接口!否则就报错!

原创粉丝点击