-
InputStream、OutputStream 抽象了应用程序读写数据方式(父类,抽象类) FileInputStream、FileOutputStream (子类) EOF=End 及文件结尾(读到-1)(is.read()=-1) 输入流基本方法 read(); 输入流基本方法 int b=in.read();读取一个字节无符号填充到int的低八位,前面的24位补零。(int是32位,一个字节8位)-1是EOF in.read(byte[] buf);读取数据填充到字节数组buf in.read(byte[] buf,int start,int size),同上,从buf的start位置开始存放size长度的数据 输出流基本方法 out.write(int b) 写出一个byte到流,b的低八位 out.write(byte][] buf) 将buf字节数组都写入到流 out.write(byte[] buf,int start,int size);同上,详见read对应方法 FileInputStream 具体实现了文件上读取数据 JavaWeb 自学群 184455634 寻找同路人查看全部
-
RandomAccessFile java提供的对文件内容的访问,既可以读文件,也可以写文件。支持随机访问文件,可以访问文件的任意位置。 java文件模型 在硬盘上的文件时 byte byte byte存储的,是数据的集合 打开文件 两种模式:“rw”(读写),“r”(只读) RandomAccessFile raf = new RandomAccessFile(File,"rw") 文件指针,打开文件时指针在开头 pointer = 0; 写方法: raf.write(int)--->只写一个字节(后8位),同时指针指向下一个位置,准备再次写入 读方法: int b = raf.read()--->读一个字节 文件读写完成以后一定要关闭 raf.close() JavaWeb 自学群 184455634 寻找同路人查看全部
-
public String[] list()返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。 exists()方法用于判断文件或目录是否存在 file.list() 返回的是 字符串数组 直接子的名称,不包含子目录下的内容 file.listFiles() 返回当前目录下的所有子目录和文件的文件数组名称 ======================================== 如果要遍历子目录下的内容就需要构造成File对象做递归操作 //throws IOException 回避了IO的抛出异常 File[] files = dir.listFiles();//返回的是直接子目录(文件)的抽象 if (file!=null && files.length > 0){ for(File file:files){ if(file.isDrectory()){ listDirectory(file); }else{ System.out.println(file); } } } JavaWeb 自学群 184455634 寻找同路人查看全部
-
中文机器上创建的文本文件只能识别ansi编码 如果是由其他地方创建的文本文件 再拷贝出来的则可以识别任意的编码 UTF-8编码 汉字占3个字节 英文占一个 gbk编码 汉字占2个字节 英文占1个 UTF-16be编码是java中的编码 汉字和英文都是占两个字节 .getBytes();将字符串变成byte类型 integer.toHexString();将字节流变成16进制的int类型 用什么编码将字符串变成字节流 就要用同样的编码才能将其变回去 new String(“dd”,"UTF-8");可以自己选择编码方式 缺省则是默认工程属性中默认的编码 JavaWeb 自学群 184455634 寻找同路人查看全部
-
File类在java中表示文件或者目录(java.io..File包) File类只用于文件(目录)的信息(名称或者大小等),不能用于文件内容的访问 exists():判断文件/文件夹是否存在查看全部
-
对象序列化 1.对象序列化,就是将object转换成byte 2.序列化流---ObjectWrite() 反序列化流---ObjectRead() 3.序列接口 对象实现序列接口,才能序列化,否则出现异常 ,这是标准查看全部
-
字节缓冲流相当于先将字节读取到缓冲区中,再由缓冲区写入到目标文件中,速度比单字节读取快,比批量读取慢。 注意:在每一次写入后缓冲区要刷新,不然写不到文件中去。查看全部
-
java文件操作查看全部
-
java.File查看全部
-
字节流查看全部
-
randomaccessfile查看全部
-
transient的序列化与反序列化操作 private void writeObject(java.io.ObjectOutputStream s) throws java.io.IOException{ s.defaultWriteObject();//把虚拟机可以默认序列化的元素进行序列化 s.writeInt(stuage);//自己完成stuage的序列化 } private void readObject(java.io.ObjectInputStream s) throws java.io.IOException, ClassNotFoundException { s.defaultReadObject();//把虚拟机可以默认反序列化的元素进行反序列化 this.stuage = s.readInt();//自己完成stuage反序列化 }查看全部
-
FileReader 和FileWriter适用于操作文件的,FileReader与FileWriter的用法与InputStreamReader和OutputStreamWriter类似,但是他们不能选择编码方式,因此对于与项目的编码方式不同的文本文件用FileWriter读取是会出现乱码的。同时,FileWriter(filename,true)是一种可在原文件上追加写操作的构造方式。查看全部
-
编码问题:查看全部
-
字符流:查看全部
举报
0/150
提交
取消