返回顶部

收藏

java使用RandomAccessFile 类存取文件

更多

下面例子演示如何使用RandomAccessFile类。

在下面的例子中我们首先打开文本文件,并指定读写权限,然后向文件中写入两行文本,然后将文件指针指向第二行开始处,然后读取第二行的内容。

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;

/**
 *
 * @author outofmemory.cn
 */
public class Main {

    /**
     * RandomAccessFile 使用示例
     */
    public void testRandomAccessFile(String filename) {

        RandomAccessFile randomAccessFile = null;
        try {

            //定义要写入文件的字符串
            String line1 = "First line\n";
            String line2 = "Second line\n";

            //创建RandomAccessFile实例,指定读写权限
            randomAccessFile = new RandomAccessFile(filename, "rw");

            //写入字符串
            randomAccessFile.writeBytes(line1);
            randomAccessFile.writeBytes(line2);

            //将文件指针指向line1结尾处
            randomAccessFile.seek(line1.length());

            //声明一个和line2相同长度的字节数组
            byte[] buffer = new byte[line2.length()];

            //读取line2内容
            randomAccessFile.read(buffer);

            //将读取出来的字符串打印到控制台
            System.out.println(new String(buffer));

        } catch (FileNotFoundException ex) {
            ex.printStackTrace();
        } catch (IOException ex) {
            ex.printStackTrace();
        } finally {
            try {

                if (randomAccessFile != null)
                    randomAccessFile.close();

            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }

    }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        new Main().testRandomAccessFile("myFile.txt");
    }
}

文件内容:

First line
Second line

控制台输出:

Second line

标签:java,IO,文件

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. 逍遥冲 发表 2013-12-05 05:53:28 [引]Java NIO —- IO复用
  2. 李璟 发表 2014-11-08 17:44:24 Java IO: FileInputStream
  3. 李璟 发表 2014-11-11 16:32:51 Java IO: RandomAccessFile
  4. 李璟 发表 2014-11-19 15:38:13 Java IO: ByteArray和Filter
  5. likai 发表 2016-11-21 10:05:54 NW.js [xxx] 发布,Chromium  55
  6. 博主 发表 2014-12-11 00:00:00 Java文件读取支持timeout
  7. root 发表 2015-04-28 05:08:01 使用java NIO进行读文件
  8. Bird101 发表 2015-12-29 07:34:21 WebLogic之Java反序列化漏洞利用实现二进制文件上传和命令执行
  9. changyuan.xu 发表 2016-09-12 11:55:06 Android开发最佳实践——2.使用Kotlin开发Android
  10. 李璟 发表 2014-11-09 01:58:14 Java IO: OutputStream
  11. 李璟 发表 2014-11-15 16:16:49 Java IO: PipedOutputStream
  12. root 发表 2015-04-19 01:56:01 黑马程序员——java基础—IO(input output)流字符流

发表评论