-
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()把指针指定到某一位置查看全部
-
java是双字节编码(utf-16be): 中文两个字节 英文两个字节; GBK:中文占两个字节,英文1个字节; utf-8:中文占三个字节,英文占1个字节。 中文系统下:ANSI编码代表GBK编码。查看全部
-
FileOutputStream fos = new FileOutputStream(file,true) 文件不存在,则创建,否则在后面追加内容 FileOutputStream fos = new FileOutputStream(file) 文件不存在,则创建,否则,删除后再创建查看全部
-
RandomAccessFile:Java 提供的对文件内容的访问类,可以读文件,也可以写文件。 支持随机访问文件,可以访问文件的任意位置。 1、java文件模型:在硬盘上的文件是byte byte byte存储的,书数据的集合 2、打开文件:有两种模式“rw”“r” 文件指针,打开文件时指针在开头pointer=0 3、写方法 raf.write(int)-->只写一个字节(后8位),同时指针指向下一个位置,准备再次写入。 4、读方法 int b=raf.read()-->读一个字节 5、文件读写完成以后一定要关闭查看全部
-
UTF8编码下,一个中文占3个字节,英文占1个字节。 GBK编码下,一个中文站2个字节,英文占1个字节。 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码 中文系统下,ANSI编码代表GBK编码查看全部
-
RandomAccessFile:Java 提供的对文件内容的访问类,可以读文件,也可以写文件。 支持随机访问文件,可以访问文件的任意位置。 1、java文件模型:在硬盘上的文件是byte byte byte存储的,书数据的集合 2、打开文件:有两种模式“rw”“r” 文件指针,打开文件时指针在开头pointer=0 3、写方法 raf.write(int)-->只写一个字节(后8位),同时指针指向下一个位置,准备再次写入。 4、读方法 int b=raf.read()-->读一个字节 5、文件读写完成以后一定要关闭查看全部
-
IO流 1.字节流 1)InputStream、OutputStream Inputstream 抽象了应用程序读取数据的方式 Outputstream 抽象了应用程序写出数据的方式 EOF=End 读到-1就读到结尾 输入流基本方法 int b=in.read();读取一个字节无符号填充到int低八位,-1是EOF in.read(byte[]buf) in.read(byte[]buf,int start,int size) 输出流基本方法 out.write(int b )写出一个byte倒流,b的低八位 out.write(byte[] buf)将buf字节数组都写入到流 out.write(byte[] buf,int start,int size) FileInputStream--->具体实现了在文件上读取数据 FileOutputStream 实现了向文件中写出byte数据的方法查看全部
-
UTF8编码下,一个中文占3个字节,英文占1个字节。 GBK编码下,一个中文站2个字节,英文占1个字节。 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码 中文系统下,ANSI编码代表GBK编码查看全部
-
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); } } }查看全部
-
java.io.File类用于表示文件(目录) File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问。 创建File对象 File file = new File("E:\\javaio");//注意“\”的转义用"\"。 file.exists();判断文件是否存在,返回boolean类型 file.mkdir();创建文件 file.mkdirs();建多级目录 file.delete();删除目录 file.isDirectory();判断是否是目录,是目录返回true,不是或者不存在都返回false file.isFile();判断是否是一个文件 file.createNewFile();创建文件,会产IO异常 直接打印file其实是调用file.toString()的内容,和打印file.getAbsolutePath()内容相同。 file.getName();获得文件的名字 file.getParent();获得父目录查看全部
-
public String[] list()返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。 exists()方法用于判断文件或目录是否存在 file.list()返回的是字符串数组,不包含子目录下的内容 file.listFiles()返回当前目录下的所有子目录和文件查看全部
-
java IO.file类只用于表示文件目录 构造函数的情况 file.exists()判断文件是否存在 file.mkdir()创建文件 file.delete()删除文件 file.idDirectory()判断是否有目录 直接打印file其实是调用file.toString()的内容,和打印file.getAbsolutePath()内容相同。查看全部
-
gbk编码中文占2个字节,英文占一个字节 utf-8编码中占3个字节,英文站一个字节 java是双字节编码uft-16 改编码中文和英文都是2个字节查看全部
-
0xff:0x指16进制 //获取字符串的字节 byte[] bytes4 = 字符串.getBytes("utf-8") ; //去除高位,保留低位,转为16进制显示 Integer.toHexString(bytes4[0] & 0xff); //将字节转为字符串,需要传入编码方式,如果不填,默认为系统当前的编码方式 String s = new String(bytes4 , "utf-8");查看全部
-
gbk编码 :中文占2个字节,英文占1个字节, utf-8编码:中文占用3个字节,英文占用1个字节 java是双字节编码utf-16be 该编码中文和英文都是2个字节 当字节序列是某种编码时,这个时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码 文本文件可以是任意编码的字节序列 如果在中文机器上直接创建文本文件,那么该文本文件只认识ANSI编码查看全部
举报
0/150
提交
取消