package accessFile;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
/**
* 文件随机读写类
* @author wxg1022
*
*/
public class TestRandomAccessFile {
public static void main(String[] args) {
// 访问到达文件末尾发生的异常:EOFException
// 文件访问中途发生的异常:IOEException
// 打开关闭文件
// RandomAccessFile(String,String);第一个参数是文件路径,第二是打开模式
// RandomAccessFile(File,String);第一个参数是文件对象,第二是打开模式
// 其中打开模式有:r(只读),rw(读写),rws(读写及同步更新),rwd(读写及同步更新)等4种
try {
/**
* 一、打开
*/
RandomAccessFile file = new RandomAccessFile("D:/demo/test6.txt",
"rw");
// 或RandomAccessFile file1=new RandomAccessFile(new
// File("D:/demo/test6.txt"),"rw");
//(1)取得文件长度
long size = file.length();
System.out.println("文件大小:"+size);
//(2)设置文件指针的位置
//file.seek(4);
System.out.println(file.readUTF());
file.seek(0);
/**
* 二、读取
*/
//(3)读取一个数据字节
int c=file.read();//每读取一个字节,指针会向后移动一个字节的位置
System.out.println((char)c);//转换为字符
//(4)读取到字节数组
byte[] b=new byte[50];
file.read(b);
String s=new String(b);
System.out.println("读取的字节数组:"+s);
//(5)灵活读取到字节数组
b=new byte[50];
file.read(b,2,10);//从第4个位置读取10个字节
s=new String(b);
System.out.println("读取的字节数组:"+s);
//(6)读取其他方式
//boolean readBoolean();
//System.out.println(file.readBoolean());
//byte readByte();
//char readChar();等等其他查看api
//(7)读取一行字符串
System.out.println(file.readLine());
//(8)读取中文字符
//System.out.println(file.readUTF());
/**
* 三、写入文件
*/
//(9)写入一个字节
file.write(100);
//(10)写入字节数组
byte[] bb=new byte[3];
bb[0]=101;
bb[1]=102;
bb[2]=127;//不能超过127
file.write(bb);
file.write(bb,1,2);//灵活写入字节数组
//写入固定类型的数值(略)
//file.writeBoolean(true);
//file.writeBoolean(false);
//file.writeInt(130);
//file.writeByte(144);
//写入一个字符串
file.writeBytes("AA");
file.writeChars("DD");
file.writeUTF("中国人");
//查看数字对应的char
for(int i=0;i<200;i++){
System.out.println(i+"="+(char)i);
System.out.println(i+"="+(byte)i);
}
//file.close();// 关闭文件
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
分享到:
相关推荐
5. **安全与异常处理**:随机读写类文件时,必须注意安全性,防止破坏类文件导致程序运行错误。同时,需要捕获并处理可能抛出的异常,如`IOException`。 6. **示例代码**: ```java RandomAccessFile raf = new ...
文件随机读写,即对文件中的数据进行非顺序访问,这通常涉及到文件指针的移动和文件定位。在本主题中,我们将深入探讨如何在C语言中实现文件的随机读写,并通过实际示例来理解这一过程。 首先,我们需要了解C语言中...
在VB(Visual Basic)编程环境中,随机文件的读写是一项基本技能,对于处理大量数据或者进行数据存储的应用程序尤其重要。本教程将深入探讨如何利用VB进行随机文件的读写操作,帮助你理解并掌握这一核心概念。 随机...
在本篇文章中,将详细介绍MySQL数据库中日志顺序读写的原理以及数据文件随机读写的机制,并探讨这两者在实际工作中的应用和性能影响。 首先,我们需要了解MySQL数据库在执行增删改操作时的两种数据读写机制。第一种...
Java中的RandomAccessFile类是用于文件随机读写的工具类,它属于java.io包。RandomAccessFile提供了读取和写入文件的能力,并且允许程序访问文件的任意位置,这使得它能够方便地进行文件的随机访问。...
本项目名为"文件读写类",表明它提供了一种抽象化的、跨平台的方式来处理文件的读取和写入任务。这个类库已经在Windows的Visual C++(VC)环境下以及Linux系统下的g++编译器中通过了测试,确保了在不同操作系统下的...
MySQL数据库在处理数据时,涉及两种关键的读写方式:日志顺序读写(日志I/O)和数据文件随机读写(数据I/O)。这两种读写方式对于数据库的性能和稳定性至关重要,尤其是在高并发、大数据量的场景下。下面我们将深入...
文件的随机读写和文件缓冲是C语言编程中进行高效文件操作的重要概念。在C语言中,文件被视为一串连续的字节序列,文件的访问可以通过文件位置指针来实现。文件位置指针是一个内部机制,它记录了当前读写的位置,每次...
在VB(Visual Basic)编程中,随机文件的读写是数据存储的重要方法,尤其是在处理大量非结构化数据或需要高效存取数据时。随机文件允许程序员以任意顺序访问文件中的数据,而不仅仅是按照数据的输入顺序。下面我们将...
前面介绍的对文件的读写...解决方法:可以移动文件内部的位置指针到需要读写的位置再进行读写(随机读写) 实现随机读写的关键:按要求移动位置指针(文件的定位) 完成文件定位的函数有:rewind、ftell、fseek函数
在Python编程中,对文件进行随机读写是一项重要的操作,特别是在处理大文件或者需要在不同位置频繁访问数据时。本文将详细讲解如何使用Python进行文本文件的随机读写。 首先,打开一个已存在的文件,我们可以使用...
为了实现随机读写,需要使用文件指针来定位文件中的具体位置。常用的方法包括: - `seekg(绝对位置)` / `seekp(绝对位置)`:绝对移动文件指针。 - `seekg(相对位置, 参照位置)` / `seekp(相对位置, 参照位置)`:相...
对于需要随机访问文件内容的情况,可以使用`RandomAccessFile`。它可以让你在文件的任意位置进行读写操作。例如: ```java RandomAccessFile randomAccessFile = new RandomAccessFile(filePath, "rw"); ...
此外,不是所有文件系统都支持内存映射,某些操作如随机写入可能不如直接使用`QFile`高效。因此,在实际应用中,需要根据具体场景选择合适的数据处理策略。 总的来说,Qt中的内存映射技术是处理大文件的理想选择,...
在本示例中,我们将深入探讨如何使用VB来建立读写随机文件的程序。 首先,我们需要了解随机文件的基本概念。随机文件不以特定的结构存储数据,而是将数据以字节流的形式保存,每个数据项都有一个唯一的文件位置。...
在程序设计中,随机读写数据文件是一项基本且重要的技能,尤其在处理大量结构化数据时。本节我们将深入探讨如何在C语言中实现文件的随机读写操作,主要涉及`fseek()`, `ftell()` 和 `rewind()` 函数。 首先,让我们...
本文主要关注的是文件的随机读写,这是一种非顺序的文件访问方式,允许程序从文件的任意位置读写数据,而不是从头到尾依次进行。这对于处理大型文件或者需要频繁跳转到文件不同位置的场景尤其有用。 实现文件的随机...
在进行文件随机读写时,确保正确使用`fopen()`打开文件,并使用合适的模式,如"r+"允许同时读写,"w+"允许创建或追加写入。之后,使用`fread()`和`fwrite()`进行数据的读写,配合`fseek()`进行位置的跳转。 在本...
这里主要介绍四个主要的文件读写函数类别:字符读写、字符串读写、数据块读写以及格式化读写,同时还涉及文件定位、随机读写以及错误检测的相关函数。 1. 字符读写函数: - `fputc` 函数用于将一个字符写入到磁盘...
文件读写操作,文件内容操作,文件的创建、查找及删除,同时显示两个文件的内容,显示目录内同类型文件,文件分割,文件加密,合并两个文件信息,统计文件内容,格式化读写文件,随机读写文件,将数据写入磁盘文件,...