• Java基础-IO流对象之随机访问文件(RandomAccessFile)


                Java基础-IO流对象之随机访问文件(RandomAccessFile)

                                          作者:尹正杰

    版权声明:原创作品,谢绝转载!否则将追究法律责任。

    一.RandomAccessFile简介

      此类的实例支持对随机访问文件的读取和写入。随机访问文件的行为类似存储在文件系统中的一个大型 byte 数组。存在指向该隐含数组的光标或索引,称为文件指针;输入操作从文件指针开始读取字节,并随着对字节的读取而前移此文件指针。

     

    二.RandomAccessFile用法展示

     1 /*
     2 @author :yinzhengjie
     3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
     4 EMAIL:y1053419035@qq.com
     5 */
     6 
     7 package cn.org.yinzhengjie.note6;
     8 
     9 import java.io.RandomAccessFile;
    10 
    11 /*
    12  * 
    13  * RandomAccessFile(File file,String mode)
    14  * RandomAccessFile(String name,String mode)
    15  */
    16 
    17 
    18 public class RandomAccessFileDemo {
    19     public static void main(String[] args) throws Exception {
    20         RandomAccessFile raf = new RandomAccessFile("yinzhengjie.txt", "rw");
    21         //写入字节类型的数据
    22         raf.write(97);    
    23         //打印文件中当前光标位置
    24         System.out.println(raf.getFilePointer());    
    25         //写入int类型的数据
    26         raf.writeInt(200);
    27         System.out.println(raf.getFilePointer());    
    28         //写入字符的数据
    29         raf.writeUTF("hello");
    30         System.out.println(raf.getFilePointer());    
    31         raf.writeUTF("world");
    32         System.out.println(raf.getFilePointer());
    33         
    34         //定位到字符串偏移量,如果是字符的话,需要移动的位置是2+字符长度。
    35         raf.seek(12);
    36         //读一个字符串
    37         String s = raf.readUTF();
    38         System.out.println(s);
    39         System.out.println(raf.getFilePointer());
    40         raf.close();
    41     }
    42 }
    43 
    44 /*
    45 以上代码执行结果如下:
    46 1
    47 5
    48 12
    49 19
    50 world
    51 19
    52 */
  • 相关阅读:
    mysql之数据类型以及操作数据表
    mysql之提示符
    神经网络-1
    matlab使用摄像头人脸识别
    使用git和intelliJ
    VS配置使用第三方库
    Qt(1)
    附录:其他相关知识
    附录:python and numpy
    上手Caffe(二)
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/8995242.html
Copyright © 2020-2023  润新知