-
DataOutputStream/DataIutputStream 对”流“功能的扩展,可以更加方面的读取int,long,字符等类型数据 DataOutPutStream中有writeInt()/writeDouble()/writeUTF(),都是包装好的方法查看全部
-
1.在实例化FileOutputStream对象时如果没标注是否追加,则如果该文件不存在就直接创建,否则删除后创建。 2.write()方法一次只能写8位所以一个int型数据要写4次,或者直接写数组如下 byte[] gbk = "中国".getBytes("gbk"); out.write(gbk); 3.在判断文件是否存在和文件类型是否正确,出错可以通过抛出IllegalArgumentException对象,初始化错误信息。查看全部
-
read()方法是返回一个int数据表示一个字节的字节序列,read(byte[] buf,int n,length )是返回数组,数组中存放着字节序列,相当于缓存查看全部
-
1.byte类型8位,int类型32位,为了避免数据转换错误,通过&0xff将高24位清零(时间8:34) 2.单字节读取不适合读大的文件,批量读取对大文件而言效率高 3.批量读取 FileInputStream in = new FileInputStream(fileName); byte[] buf = new byte[8 * 1024]; /*从in中批量读取字节,放入到buf这个字节数组中, * 从第0个位置开始放,最多放buf.length个 * 返回的是读到的字节的个数 */ int bytes = in.read(buf,0,buf.length);//一次性读完,说明字节数组足够大查看全部
-
IO流(输入流、输出流) 字节流、字符流 1.字节流 1)InputStream、OutputStream InputStream抽象了应用程序读取数据的方式 OutputStream抽象了应用程序写出数据的方式 2)EOF = End 读到-1就读到结尾 3)输入流基本方法 int b = in.read();读取一个字节无符号填充到int低八位.-1是 EOF in.read(byte[] buf) in.read(byte[] buf,int start,int size) 4)输出流基本方法 out.write(int b) 写出一个byte到流,b的低8位 out.write(byte[] buf)将buf字节数组都写入到流 out.write(byte[] buf,int start,int size) 5)FileInputStream--->具体实现了在文件上读取数据 6)FileOutputStream 实现了向文件中写出byte数据的方法查看全部
-
1.RandomAccessFile是Java提供的对文件内容的访问类,既可以写文件,也可以读文件,支持随机访问文件(访问文件的任意位置) 2.java文件模型 : 在硬盘上的文件是byte byte byte 存储的 是数据的集合 打开文件 有两种模式 rw 读写 r只读 RandomAccessFile raf=new RandomeAccessFile(file,"rw"); 文件指针, pointer=0; 写方法 raf.write(int) ---> 只写一个字节 (后8位) 同时指针指向下一个位置 准备再次写入 读方法 int b=raf.read(); 读一个字节 文件读写完成后一定要关闭 (oracle官方说明)查看全部
-
1.file.list()返回当前目录下的文件名和直接的子目录名 2.file.listFile()返回的是file对象 3.可以通过listFile()方法和递归调用实现对一个目录下所有文件的遍历查看全部
-
file.mkdir()只创建一级目录,有多级目录要创建是用file.mkdirs();查看全部
-
1.file类用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问 2.字符中的路径要双\\其中一个是转义字符 3.file.exists(),file.mkdir(),file.delete() 4.创建File对象:File file=new File(String path);或File file=new File(String 目录,String 文件名) 注意:File.seperater();获取系统分隔符,如:”\“查看全部
-
字符串通过某种编码变为字节序列,文本文件可以是任意编码的字节序列,当文本文件的编码与字节序列不匹配是就会出现乱码查看全部
-
gbk编码中文占2个字节,英文占1个字节, utf-8编码,中文占用3个字节,英文占用1个字节 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码查看全部
-
RandomAccessFile是Java提供的对文件内容的访问,既可以写文件,也可以读文件查看全部
-
IO流(输入流、输出流) 字节流、字符流 1.字节流 1)InputStream、OutputStream InputStream抽象了应用程序读取数据的方式 OutputStream抽象了应用程序写出数据的方式 2)EOF = End 读到-1就读到结尾 3)输入流基本方法 int b = in.read();读取一个字节无符号填充到int低八位.-1是 EOF in.read(byte[] buf) in.read(byte[] buf,int start,int size) 4)输出流基本方法 out.write(int b) 写出一个byte到流,b的低8位 out.write(byte[] buf)将buf字节数组都写入到流 out.write(byte[] buf,int start,int size) 5)FileInputStream--->具体实现了在文件上读取数据 6)FileOutputStream 实现了向文件中写出byte数据的方法查看全部
-
RandomAccessFile : java提供的对文件内容的访问 既可以读文件 也可以写文件 支持随机访问文件 可以访问文件的任意位置 (1)java文件模型 : 在硬盘上的文件是byte byte byte 存储的 是数据的集合 (2)打开文件 有两种模式 rw 读写 r只读 RandomAccessFile raf=new RandomeAccessFile(file,"rw"); 文件指针, pointer=0; (3)写方法 raf.write(int) ----> 只写一个字节 (后8位) 同时指针指向下一个位置 准备再次写入 (4)读方法 int b=raf.read(); 读一个字节 (5)文件读写完成后一定要关闭 (oracle官方说明) raf.getFilePointer()获取当前指针位置 raf.length()获取文件长度 raf.seek()把指针指定到某一位置查看全部
-
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); } } }查看全部
举报
0/150
提交
取消