File和RandomAccessFile归纳总结
一、File类
1)File类用途:用于描述文件系统中的一个文件或目录。
2)具体用法:
1>创建File类
File file = new File("."+File.separator+"test.txt");
注意:在路径中使用目录的层级分隔符在不同系统中有区别
* windows默认为"\" : d:\XXX\XXX\test.txt
* linux "/" : d:/XXX/test.txt
* 所以当需要使用目录层级分隔符时应当使用File提供的常量
File.separator
2> File类的属性和方法
a.查看该文件大小
long length = file.length();
b.获取当前File所描述的文件或目录的名字
file.getName();
c.获取当前文件或目录的最后修改日期
file.lastModified();
d.判断当前File对象所描述的文件或目录是否存在
file.exists();
e.查看当前文件或目录是否可读
file.canRead();
f.查看当前文件是否可写
file.canWrite();
g.查看当前File对象描述的是否是一个文件
file.isFile();
h.查看当前File对象描述的是否是一个目录
file.isDirectory();
i.获取该File对象所描述文件或目录的路径
file.getPath();
j.获取绝对路径
file.getAbsolutePath();
k.获取操作系统标准的绝对路径(该方法需要强制捕获异常)
file.getCanonicalPath();
l.创建一个目录
dir.mkdir();
m.创建一个新文件
file.createNewFile();
n.获取当前File对象的父目录
file.getParentFile();
o.当删除了该文件或目录
file.delete();
注意:若要删除一个目录,必须保证该目录是空目录(不包含任何子项)才可以删除
二、RandomAccessFile类
1)用途:使用RandomAccessFile向文件中读写数据。
2)具体用法:
1>创建RandomAccessFile类
RandomAccessFile raf = RandomAccessFile(File file,String mode);
其中: file 用于来进行读写操作的文件
mode 对应:
* "r" : 对该文件的操作是只读的
* "rw": 队该文件的操作是可读写的
2> RandomAccessFile中常用方法:
a.向文件中写入一个字节
raf.write();
b.写一个long值
raf.writeLong();
c.写一个字符串按照UTF-8编码将字符串转换为字节后写出
raf.writeUTF();
注意:writeUTF方法写出的字节量比实际多2个字节这两个字节用于记录其写出的字符串占用的 总字节量以便读取
d.将字符串按照当前系统默认的字符集转换为对应的字节后写出
byte[] data = str.getBytes("utf-8");
raf.write(data);
e.读取一个字节
raf.read()
f.连续读取4个字节,将对应的int值返回
readInt();
g.连续读取8个字节,将对应的long值返回
raf.readLong();
h.使用UTF-8编码的形式读取字符串
raf.readUTF();
i.获取当前游标的位置
raf.getFilePointer();
j.滑动游标到指定的位置
void seek(long pos);
注意:0代表第一个字节的位置
相关推荐
文件操作——File 、 RandomAccessFile(上).mp4
文件操作——File 、 RandomAccessFile(上).mp4
在使用RandomAccessFile时,首先需要创建一个File对象,然后通过File对象和指定的模式创建RandomAccessFile实例。例如: ```java File f = new File("path/to/file"); RandomAccessFile raf = new RandomAccessFile...
### Java基础——IO流及File、RandomAccessFile对象 #### IO流概述 在Java中,IO流主要用于处理设备上的数据,这里的“流”可以被理解为数据的流动过程,即数据从一个地方移动到另一个地方的过程。Java中的IO流通过...
主要介绍了Java I/O深入学习之File和RandomAccessFile, I/O系统即输入/输出系统,对于一门程序语言来说,创建一个好的输入/输出系统并非易事。在充分理解Java I/O系统以便正确地运用之前,我们需要学习相当数量的...
Java的`RandomAccessFile`类是Java I/O流体系中的一种特殊类型,它允许程序员以随机访问模式读取和写入文件。与传统的输入/输出流不同,`RandomAccessFile`可以任意位置开始读写,这使得它在处理大文件或需要定位到...
总结一下,`RandomAccessFile`是Java中用于实现文件随机访问的强大工具,尤其适用于处理大文件和需要高效读写定位的场景。通过理解其核心方法和工作原理,开发者可以构建出更加灵活和高效的文件处理程序。对于标签...
### RandomAccessFile 解决乱码 ...总结来说,在使用 `RandomAccessFile` 处理包含中文字符的数据时,需要注意编码的一致性,避免出现乱码问题。通过指定正确的编码格式或进行编码转换,可以有效解决此类问题。
var file = randomAccessFile ( 'my-file.txt' ) file . write ( 10 , Buffer . from ( 'hello' ) , function ( err ) { // write a buffer to offset 10 file . read ( 10 , 5 , function ( err , buff
RandomAccessFile raf = new RandomAccessFile("file.txt", "rw"); ``` 2. **定位与移动指针**:`RandomAccessFile`有一个名为`seek()`的方法,用于将文件读写指针移动到指定的位置。例如,要将指针移动到文件...
RandomAccessFile处理文件的案例
`RandomAccessFile`提供了多个构造方法,其中最常用的是接受两个参数的构造方法:一个是文件路径或`File`对象,另一个是访问模式字符串。访问模式字符串通常有以下几种: - **"r"**:只读模式。 - **"rw"**:读写...
与`FileInputStream`和`FileOutputStream`等流式文件操作相比,`RandomAccessFile`提供了更多的控制选项。 #### 二、代码分析 #### 2.1 创建员工信息并保存至文件 代码首先定义了一个`Employee`数组`staff`,其中...
RandomAccessFile raf = new RandomAccessFile("file.txt", "rw"); ``` 使用`RandomAccessFile`,我们可以通过`seek()`方法定位到文件的任意位置,然后通过`read()`或`write()`方法进行数据操作。例如,读取当前...
File 类、RandomAccessFile 类、字节流(文件字节流、缓冲字节流、基本数据类型字节流、打印流、对象序列化流、字节数组流)、字符流(缓冲字符流、文件字符流、转换流、格式化输出流、字符数组流) 这份代码源码...
与`FileInputStream`和`FileOutputStream`等流相比,`RandomAccessFile`提供了一个更灵活的方法来处理文件,因为它允许直接定位到文件中的任意位置进行读写操作。 #### 二、RandomAccessFile 的中文写入问题 在...
RandomAccessFile(下).mp4
NIO_RandomAccessFile_多线程读本地CSV文件(java==> google guava包ListenableFuture) reader里有个main函数,更改文件路径后,直接运行即可
因为使用其他文件流修改文件时是整体的替换,导致SVN上传上去后是整个文件都修改了,所以需要增量修改,这个demo是使用RandomAccessFile增量修改,只修改指定的行,很实用