java基础知识回顾之javaIO类--RandomAccessFile类

技术java基础知识回顾之javaIO类--RandomAccessFile类 java基础知识回顾之javaIO类--RandomAccessFile类java.io类 RandomAccessFil

Java基础知识复习的Java IO类——随机访问文件类

java.io

类RandomAccessFile

随机访问文件(文件文件,字符串模式)

随机访问文件(字符串名称,字符串模式)

public voidseek(long pos)throwsio exception设置指针的初始位置。

longgetFilePointer()throwsio exception返回指针的位置,即从开始的偏移量,以字节为单位。

mode 参数指定用以打开文件的访问模式:

价值

隐含意义

r

以只读方式打开。调用结果对象的任何写方法都会导致引发IOException。

rw '

从而开启读写。如果文件不存在,请尝试创建它。

rws '

为了打开读写,对于“rw”,还要求文件内容或元数据的每次更新都同步写入底层存储设备。

rwd '

为了打开读写,对于“rw”,还要求文件内容的每次更新都同步写入底层存储设备。

代码:

用ranacc.txt写,张三,97,王强,99。

//使用RandomAccessFile对象写一些关于人的信息,比如姓名和年龄。

公共静态void writeFile()引发IOException{

/*

*如果文件不存在,将创建该文件;如果文件存在,将不会创建它。

*

*/

RandomAccessFile RAF=new RandomAccessFile(' ranacc . txt ',' rw ');

Raf.write('张三'。getBytes());

RAF . writeint(97);

拉夫赖特('萧蔷')。getBytes());

RAF . writeint(99);

//

RAF . close();

}

存储在RandomAccessFile对象的字节数组中,如下图所示:

汉字是两个字节,数字是一个字节:

然后需求需要读取萧蔷的信息并输出萧蔷,99。

这使用RandomAccessFile对象中的查找方法。

/**

*阅读萧蔷的信息,而不是张三的。

* @抛出IOException

*/

public static void readFile()引发IOException {

RandomAccessFile RAF=new RandomAccessFile(' ranacc . txt ',' r ');

//通过查找设置指针的位置。

RAF . seek(1 * 8);//随机读取。只需指定指针的位置。

byte[] buf=新字节[4];

RAF . read(buf);

字符串名称=新字符串(buf);//

int age=RAF . readint();//从当前指针读取4个字节

system . out . println(' name=' name ');

system . out . println(' age=' age ');

system . out . println(' pos : ' RAF . GetFilePointer());//获取指针的位置

RAF . close();

}

输出:

name=小强age=99pos:16

结论:随机读取可以读取字节数组中任意位置的数据。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/154990.html

(0)

相关推荐

  • 高抬腿的正确做法,胖子跑步上气不接下气怎么解决

    技术高抬腿的正确做法,胖子跑步上气不接下气怎么解决答:首先你要排除有没有心肺功能疾病高抬腿的正确做法?如果没有这方面的疾病的话,就在跑步的时候循序渐进,每天坚持跑,先跑个500米,然后加码,逐渐加上去,让你的身体逐渐适应

    生活 2021年10月25日
  • 《LeetCode刷题笔记》Day1——数组

    技术《LeetCode刷题笔记》Day1——数组 《LeetCode刷题笔记》Day1——数组------------恢复内容开始------------
    二分查找
    只要是顺序数组,都可以考虑用一下二分

    礼包 2021年12月14日
  • Qt 实现涂鸦板二:实现放大功能

    技术Qt 实现涂鸦板二:实现放大功能 Qt 实现涂鸦板二:实现放大功能在一的基础上改造:
    .h 文件#pragma once#include QtWidgets/QWidget
    #include "ui

    礼包 2021年11月5日
  • Java中Future和FutureTask怎么用

    技术Java中Future和FutureTask怎么用小编给大家分享一下Java中Future和FutureTask怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、Future 接口当 call

    攻略 2021年11月30日
  • 【转载】EXCEL VBA 自定义排序的三种方法

    技术【转载】EXCEL VBA 自定义排序的三种方法 【转载】EXCEL VBA 自定义排序的三种方法何谓自定义排序,就是按指定的顺序对数据源进行排序呗。共分享了三种方法:
    第1种方法是系统自带的Ord

    礼包 2021年11月13日
  • 女娲补天翻译,怎样正确理解“万恶淫为首”

    技术女娲补天翻译,怎样正确理解“万恶淫为首”真人真事女娲补天翻译,巳经过去了六年了!农村有买新娘现象,这就是真事,男的巳经三十多岁了,家里正为他 筹备婚事,女是越南妹,由于身份问题,不能 正式登记结婚,农村也我直接摆酒请

    生活 2021年10月22日