zoukankan      html  css  js  c++  java
  • 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 */
  • 相关阅读:
    C# Winform窗体间传值
    用遍历判断listview是否有重复数据
    asp.net中Webservice的调用实例
    C#中datagridview获取当前行并修改数据
    C#ArrayList的用法
    八步解决ACCESS自动编号问题,SERVER 2000数据库,转换为ACCESS数据库
    SQL Server 2005 中为安装程序增加计数器注册表项值
    我现在在用的.NET数据操作类
    C#中MessageBox用法大全
    C#调用WebService实例和开发
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/8995242.html
Copyright © 2011-2022 走看看