-
FileOutputStream out=new FileOutputStream("dd/dd.c") 如果该文件不存在 则直接创建 如果存在则删除后创建 FileOutputStream out=new FileOutputStream("dd/dd.c",true)如果该文件不存在 则直接创建 如果存在则在原文件后面添加 学会看帮助文档查看全部
-
输出和输入一样的查看全部
-
java在硬盘上的文件是以Byte数据集合的形式储存的查看全部
-
InputStream 抽象了应用程序读取数据的方式(抽象类) OutputStream 抽象了应用程序写出数据的方式(抽象类) Eof=end 等同于-1 键盘是一个输入的过程 (这里in是一个输入流对象) in.read() in.read(byte[] buf) in.read(byte[] buf,int start,int size) 输出流等同于输入流 FileInputStream()查看全部
-
异常的抛出 file dir dir.list(); 返回一个String的数组 路径下的文件名称(仅限于该目录下的第一级) file dir dir.listFile();返回的是file类型的数组 file.length():判断路径下的子目录是否还有文件 文件的遍历查看全部
-
java.io.file用于表示文件(目录) file只能表示文件的信息(名称 大小等)不能用于文件内容的访问 alt+/可以查阅帮助文件 file.exists();查找路径是否存在 file.mkdir();创建一个目录 new file(“E:\\kk\\cc”);file表示这个路径 new file(“E:\\kk”,"cc.txt");file表示cc这个文件 new file(“E:/kk”);file表示这个路径 file.seperate;表示分隔符 file.delete();删除file file.isDirectory();判断file是否是一个目录 file.isFile();判断file是否是一个文件 file.createNewFile();创造一个文件或目录 直接打印file 如果file是一个目录 则显示的是这个路径 如果是一个文件 则是这个文件的名称和类型 file.getAbsolutePath()得到路径 file.getName();得到名称(目录指的设是最后一级的名称 file.getParent();得到父目录 或父文件查看全部
-
中文机器上创建的文本文件只能识别ansi编码 如果是由其他地方创建的文本文件 再拷贝出来的则可以识别任意的编码 UTF-8编码 汉字占3个字节 英文占一个 gbk编码 汉字占2个字节 英文占1个 UTF-16be编码是java中的编码 汉字和英文都是占两个字节 .getBytes();将字符串变成byte类型 integer.toHexString();将字节流变成16进制的int类型 用什么编码将字符串变成字节流 就要用同样的编码才能将其变回去 new String(“dd”,"UTF-8");可以自己选择编码方式 缺省则是默认工程属性中默认的编码查看全部
-
文件存储的是byte byte byte 型的字节集合查看全部
-
I/O流查看全部
-
一、序列化bar class Bar{ public Bar(){ System.out.println("bar"); } } class Bar1 extends Bar{ public Bar1(){ System.out.println("bar1.."); } } class Bar2 extends Bar1 implements Serializable{ public Bar2(){ System.out.println("bar2..."); }查看全部
-
二.反序列化是否递归调用父类的构造函数 ObjectInputStream ois = new ObjectInputStream( new FileInputStream("demo/obj1.dat")); Foo2 foo2 = (Foo2)ois.readObject(); System.out.println(foo2); ois.close();查看全部
-
5)序列化中 子类和父类构造函数的调用问题 /* * 一个类实现了序列化接口,那么其子类都可以进行序列化 */ class Foo implements Serializable{ public Foo(){ System.out.println("foo..."); } } class Foo1 extends Foo{//直接繼承父類就可以序列化了 public Foo1(){ System.out.println("foo1..."); } } class Foo2 extends Foo1{ public Foo2(){ System.out.println("foo2..."); } } 遞歸調用了父類的構造函數查看全部
-
ArrayList源码中序列化和反序列化的方法,可以拿來直接用: private void writeObject(java.io.ObjectOutputStream s) throws java.io.IOException private void readObject(java.io.ObjectInputStream s) throws java.io.IOException, ClassNotFoundException private void writeObject(java.io.ObjectOutputStream s) throws java.io.IOException{ s.defaultWriteObject();//把jvm能默认序列化的元素进行序列化操作 s.writeInt(stuage);//自己完成stuage的序列化 } private void readObject(java.io.ObjectInputStream s) throws java.io.IOException, ClassNotFoundException{ s.defaultReadObject();//把jvm能默认反序列化的元素进行反序列化操作 this.stuage = s.readInt();//自己完成stuage的反序列化操作 }查看全部
-
4) transient关键字 该元素不会进行jvm默认的序列化,但是也可以自己完成这个元素的序列化(不用JVM默認生物方法,自己構造) age的顯示為默認值0,未被序列化查看全部
-
//反序列化 ObjectInputStream ois = new ObjectInputStream( new FileInputStream(file)); Student stu = (Student)ois.readObject(); System.out.println(stu); ois.close();查看全部
举报
0/150
提交
取消