java RandomAccessFile类文件基本操作

RandomAccessFile类是java中仿C的文件操作方法,下面通过实例演示RandomAccessFile类对文件的基本操作,深入了解请查看Java API文档。(注:RandomAccessFile类大多不被采用)

上代码

import java.io.*;

public class AccessFileDemo
{
	public static void main(String[] args)
	{
		Student stu1=new Student("Zhang San",10);
		Student stu2=new Student("Li Si",11);
		Student stu3=new Student("Wang Wu",12);

		try
		{
			//未找到文件时自动创建新文件
			RandomAccessFile af=new RandomAccessFile("F:\\workspace\\JavaPrj\\test.txt","rw");
			af.writeBytes(stu1.name);
			af.writeInt(stu1.age);
			af.writeBytes(stu2.name);
			af.writeInt(stu2.age);
			af.writeBytes(stu3.name);
			af.writeInt(stu3.age);
			af.close();

			af=new RandomAccessFile("F:\\workspace\\JavaPrj\\test.txt","r");
			System.out.println("The second person‘s information is");
			int len=8;
			String str=new String();
			af.skipBytes(12);
			while(len>0)
			{
				str=str+(char)af.readByte();
				len--;
			}
			System.out.println("Name: "+str);
			System.out.println("Age : "+af.readInt());

			System.out.println("The first person‘s information is");
			af.seek(0);
			len=8;
			str="";
			while(len>0)
			{
				str=str+(char)af.readByte();
				len--;
			}
			System.out.println("Name: "+str);
			System.out.println("Age : "+af.readInt());

			System.out.println("The third person‘s information is");
			af.skipBytes(12);
			len=8;
			str="";
			while(len>0)
			{
				str=str+(char)af.readByte();
				len--;
			}
			System.out.println("Name: "+str);
			System.out.println("Age : "+af.readInt());
		}
		catch (FileNotFoundException e)
		{
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		catch (IOException e)
		{
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

class Student
{
	String name;
	int age;

	Student(String str,int num)
	{
		if(str.length()>8)
		{
			str=str.substring(0, 8);	//从索引0到索引7的字符
		}
		else
		{
			while(str.length()<8)
			{
				str=str+"\u0000";
			}
		}
		name=str;
		age=num;
	}
}

java RandomAccessFile类文件基本操作,布布扣,bubuko.com

时间: 2024-08-24 17:23:55

java RandomAccessFile类文件基本操作的相关文章

java File类的基本操作

(如果有谁想要这个软件的话,在评论中留一个邮箱吧.) 前几天好几次看到有朋友晒出玩2048刷高分的截图,我就想我能不能也做一个2048呢?仔细想了想2048游戏的规律,发现其实逻辑上很简单,也不用研究什么算法,于是我马上觉得我可以很快写出来.当天下午我就用了四个小时完成了2048的基本功能.几天后觉得不满足,于是给我的2048加了存档.读档和后退一步的功能,这样就更好刷分了呢! 使用语言:C#: 平台:Visual Studio 2012 Win Form. 如何完成2048的基本功能呢?204

java学习之文件基本操作

一.File类 文件的创建 package file; import java.io.File; import java.io.IOException; public class CreateFile { public static void main(String[] args) { // TODO 自动生成的方法存根 File file=new File("C:\\Users\\Public\\Desktop\\demo.txt"); try{ file.createNewFile

Java虚拟机-类文件

代码编译的结果从本地机器码转换为字节码,是存储格式发展的一小步,却是编程语言发展的一大步.计算机只认识0和1,所以我们的程序需要经过编译器翻译成由0和1组成的二进制格式才能由计算机执行.经过技术的发展,将编写的程序编译成二进制本地机器码已经不是唯一的选择,越来越多的程序语言选择了与操作系统和机器指令无关.平台中立的格式作为程序编译后的存储格式. 实现语言无关性的基础是虚拟机和字节码存储格式.Java虚拟机不和包括Java在内的任何语言绑定,只与"Class文件"这种特定的二进制文件所关

java RandomAccessFile 向文件中写入数据,怎么样不覆盖原来的数据

import java.io.IOException;import java.io.RandomAccessFile;public class RandomFileAccess {public static void main(String[] args) throws IOException {RandomAccessFile raf = new RandomAccessFile("d:/abc.txt", "rw");// 你需要使用seek设置文件的偏移量ra

Java File 类 文件的常用操作(递归遍历所有文件,统计文件大小,删除文件)

1 package com.beiwo.homework; 2 3 import java.io.File; 4 5 /* 6 4.将一个文件夹中所有的文件查找出来,按照一定的格式 7 分析 : 1.一个文件夹中存在文件,子文件夹 8 2.除了当前文件夹,还有子文件夹中的文件也需要找出来. 9 3.子文件查找文件和当前文件查找文件是一样的操作,就可以定义一个方法来做文件查找 10 11 3.删除一周前的数据 12 13 2.获取文件夹中所有文件的大小 14 15 1.判断是否有隐藏文件 16 1

Java 实现 HDFS 文件基本操作

1. pom <hadoop.version>2.7.3</hadoop.version> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>${hadoop.version}</version> </dependency> <depen

java工具类 文件zip压缩 base64 加密,base64解密 zip解压

package com.cfam.utils; import java.io.BufferedOutputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException;

Java类文件最大限制

今天在往一个jsp文件里添加代码时,项目跑起来访问这个jsp时报错.. The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit _jspService方法超过65535 bytes最大限制. 额,这是什么鬼,看不懂啊.于是问问度娘,发现Java对类文件有个限制,不能超过65K字节.因为我改动的这个jsp已经很大了,而jsp文件在weblog

Java 核心编程——文件随机读写类(RandomAccessFile)

1.RandomAccessFile RandomAccessFile主要用于文件内容的读写访问 2.访问模式 "r":只读方式. "rw":打开以便读取和访问,如果文件不存在则创建文件. "rws": 除了'rw'功能以外,文件内容或者元数据更新时一同写入. "rwd":除了'rw'功能以外,文件内容更新时一同写入. 3.使用案例 package test; import java.io.File; import java.