package edu.fjut.file;
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
//RandomAccessFile类的主要功能是完成随机读取功能
//可以读取指定位置的内容
public class RandomAccessFileDemo {
public static void main(String[] args) throws IOException {
//指定要操作的文件
File file=new File("d:"+File.separator+"javase"+File.separator+"stu.txt");
//rw为文件的打开方式(r,w,rw),如果文件不存在,会自动创建
RandomAccessFile rdf=new RandomAccessFile(file,"rw");
String name=null;
int age=0;
//在文件中,所有的内容都是按照字节存放的,都有固定的保存位置.
name="zhangsan"; //字符串的长度为8
age=30; //数字的长度为4
rdf.writeBytes(name); //将姓名写入文件中
rdf.writeInt(age); //将年龄写入文件中
name="lisi "; //不够8个字符,用空格补全
age=32;
rdf.writeBytes(name);
rdf.writeInt(age);
name="wangwu ";
age=36;
rdf.writeBytes(name);
rdf.writeInt(age);
rdf.close();//注意要关闭通道
}
}
package edu.fjut.file;
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
//读取文件中的内容
public class RandomAccessFileDemo2 {
public static void main(String[] args)throws IOException {
File file=new File("d:"+File.separator+"javase"+File.separator+"stu.txt");
//以只读的方式打开文件
RandomAccessFile rdf=new RandomAccessFile(file,"r");
String name=null;
int age;
byte []bytes=new byte[8];
//跳过一个人的信息
rdf.skipBytes(12);
//读取字符串需要一个一个字节的读取
for(int i=0;i<bytes.length;i++){
bytes[i]=rdf.readByte();
}
name=new String(bytes); //把byte数组转换成字符串对象
age=rdf.readInt();
System.out.println("第二个人的信息是: 姓名-->"+name.trim()+",年龄-->"+age);
rdf.seek(0);//指针回到文件的开头
for(int i=0;i<bytes.length;i++){
bytes[i]=rdf.readByte();
}
name=new String(bytes);
age=rdf.readInt();
System.out.println("第一个人的信息是: 姓名-->"+name.trim()+",年龄-->"+age);
rdf.skipBytes(12);//空出第二个人的信息
for(int i=0;i<bytes.length;i++){
bytes[i]=rdf.readByte();
}
name=new String(bytes);
age=rdf.readInt();
System.out.println("第三个人的信息是: 姓名-->"+name.trim()+",年龄-->"+age);
rdf.close();//注意关闭通道
}
/*
第二个人的信息是: 姓名-->lisi,年龄-->32
第一个人的信息是: 姓名-->zhangsan,年龄-->30
第三个人的信息是: 姓名-->wangwu,年龄-->36
*/
}
分享到:
相关推荐
RandomAccessFile类是Java I/O库中的一个重要组件,它提供了对文件进行随机访问的能力,这意味着你可以直接跳到文件的任意位置进行读写操作,而不仅仅局限于从头到尾的顺序访问。这个类非常适合处理大数据量的文件,...
RandomAccessFile处理文件的案例
Java的`RandomAccessFile`类是Java I/O流体系中的一种特殊类型,它允许程序员以随机访问模式读取和写入文件。与传统的输入/输出流不同,`RandomAccessFile`可以任意位置开始读写,这使得它在处理大文件或需要定位到...
Java中的`RandomAccessFile`是一个非常重要的类,它允许我们以随机访问模式读写文件,这意味着我们可以自由地在文件的任何位置进行读写操作,而不仅仅是顺序地从头到尾处理文件。这个类提供了对文件内容进行高效定位...
### 使用RandomAccessFile流将一个文本文件读出并写入到另一个文件中的知识点解析 在Java编程语言中,`RandomAccessFile`类提供了一种非常灵活的方式来读取和写入文件。它支持随机访问,意味着我们可以直接跳转到...
### RandomAccessFile 随机访问文件的使用体会 #### 一、RandomAccessFile简介 `RandomAccessFile`是Java中的一个类,位于`java.io`包中,它提供了对文件进行读写的能力,并且可以随机地定位到文件中的任何位置...
Java中的`RandomAccessFile`类是用于处理文件的高级接口,它允许我们对文件进行随机访问,即在文件的任何位置进行读写操作,而不仅仅是从文件头开始顺序读写。这种能力使得`RandomAccessFile`在处理大文件或者需要...
### RandomAccessFile 向文件中写入中文 在Java编程中,经常需要处理文件操作,尤其是在涉及中文字符的写入时。本篇文章将详细介绍如何利用`RandomAccessFile`类正确地向文件中写入中文字符,并解释不同写入方法的...
### RandomAccessFile 解决乱码 #### 背景与问题描述 在Java编程中,`RandomAccessFile` 类提供了一种方式来处理文件中的数据,允许程序随机访问文件的任何部分。但在处理中文或其他非ASCII字符时,可能会遇到乱码...
本教程聚焦于Java中的`RandomAccessFile`类,这是Java I/O流体系中的一个重要部分,用于处理可以随机读写的数据文件。在Java基础学习的第16天,我们将深入探讨这个主题。 `RandomAccessFile`类在`java.io`包下,它...
NIO_RandomAccessFile_多线程读本地CSV文件(java==> google guava包ListenableFuture) reader里有个main函数,更改文件路径后,直接运行即可
RandomAccessFile(下).mp4
因为使用其他文件流修改文件时是整体的替换,导致SVN上传上去后是整个文件都修改了,所以需要增量修改,这个demo是使用RandomAccessFile增量修改,只修改指定的行,很实用
文件操作——File 、 RandomAccessFile(上).mp4
文件操作——File 、 RandomAccessFile(上).mp4
RandomAccessFile随机文本,使用多线程处理复制文件
【基于RandomAccessFile文件分类的小程序】是一款实用的工具,其主要功能是对指定文件夹内的文件进行分类。在实现这一功能的过程中,它依赖于`config.xml`配置文件,该文件用于设定分类规则,即哪些文件应该被归为同...
花1K内存实现高效I-O的RandomAccessFile类 自己搜搜这个关键字. 我主要是用来优化Android上多线程断点下载的写文件效率 RandomAccessFile是操作硬盘的,比操作内存的数据慢了几百万倍, 所有有人做出优化,我特上传...
随机访问文件(RandomAccessFile)是Java提供的一个类,它允许程序随机访问文件中的任意位置,进行读写操作。使用RandomAccessFile可以在文件的任意位置插入数据,这对于那些需要在文件中间添加内容而不干扰其他数据...