`

java IO随机读写流

阅读更多
package com.io.file;

import java.io.IOException;
import java.io.RandomAccessFile;

/**
 * @类功能说明:该类不是IO体系中的,而是直接继承自Object
 * 但是它是IO包中的一员,因为他具备了读写能力
 * 内部封装了一个数组,可以通过指针对数组元素的操作
 * 可以通过getFilePointer获取指针的位置
 * 同时可以通过seek改变指针的位置
 * 
 * 其实完成读写的原理,就是内部封装了字节写入流和字节输出流
 * 通过构造函数可以看出,该类仅操作文件
 * 而且操作文件还有模式:r(只读),rw(读写)等
 * 
 * 如果模式为r,不会创建文件,会去读取一个文件,如果读不到,则抛出异常
 * 如果模式为rw,要操作的文件不存在,会创建,如果存在,则不会覆盖(写入数据的时候覆盖相应字节位置的数据)
 * @类修改者:
 * @修改日期:
 * @修改说明:
 * @作者:matieli
 * @创建时间:May 26, 2012 9:28:59 AM
 * @版本:V1.0
 * 
 */
public class RandomAccessFileDemo {
	public static void main(String[] args)throws IOException {
		//writeFile();
		//readFile();
		//writeFile_2();
	}
	public static void readFile()throws IOException{
		RandomAccessFile raf=new RandomAccessFile("ran.txt","r");
		//跳过“李四”,读取张三的信息
		//raf.seek(8);//当前例子中,名字和年龄各占4个字节
		
		raf.skipBytes(8);//通过掉过字节数的方式,不能向回读。
		
		byte[] b=new byte[4];//之前写入的都是按4字节写入的
		raf.read(b);
		String name=new String(b);
		System.out.println("名字是:"+name);
		int age =raf.readInt();
		System.out.println("年龄是:"+age);
		raf.close();
	}
	
	public static void writeFile_2()throws IOException{
		RandomAccessFile raf=new RandomAccessFile("ran.txt","rw");
		//控制写入的位置
		raf.seek(8*3);
		raf.write("王五".getBytes());
		raf.writeInt(103);//按int的4字节写入
		raf.close();
	}
	
	
	public static void writeFile()throws IOException{
		RandomAccessFile raf=new RandomAccessFile("ran.txt","rw");
		raf.write("李四".getBytes());
		raf.writeInt(97);//按int的4字节写入
		
		raf.write("张三".getBytes());
		raf.writeInt(99);//按int的4字节写入
		raf.close();
	}
}


分享到:
评论

相关推荐

    JAVA程序员.doc

    Java异常机制.pdf Java异常机制.pdf Java异常机制.pdf

    java源码包---java 源码 大量 实例

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术,...

    JAVA上百实例源码以及开源项目

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术,...

    JAVA上百实例源码以及开源项目源代码

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术,...

    java源码包4

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术...

    java源码包3

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术...

    java jdk实列宝典 光盘源代码

    7 IO输入输出流 获取文件的基本信息;列出指定目录下的文件,并可过滤文件;创建文件和目录;删除文件和目录;移动文件和目录; 复制文件和目录;一个简单的文件搜索器; 多种方式读文件内容, 按字节读取文件内容、...

    java源码包2

    Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密  Java非对称加密源程序代码实例,本例中使用RSA加密技术...

    跟汤老师学Java(第15季):I/O输入输出流

    本课程从零开始,以通俗易懂的方式讲解Java技术,手把手教你掌握每一个知识点。 真正做到零基础入门学习,适合初学者的...6.随机读写流  RandomAccessFile 教学全程采用笔记+代码案例的形式讲解,通俗易懂!!!

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    基于Misty1算法的加密软件(JAVA)的实现.rar

    文件IO操作:使用Java的文件IO流实现文件读写功能,确保加密文件的输入和输出。 安全性考虑: 密钥安全:采用安全的密钥管理机制,如密码学安全随机数生成器来生成密钥,确保密钥的随机性和安全性。 数据保护:对...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    java 面试题 总结

    JAVA相关基础知识 1、面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用...

    超级有影响力霸气的Java面试题大全文档

    超级有影响力的Java面试题大全文档 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例021 重定向输出流实现程序日志 31 实例022 自动类型转换与强制类型转换 33 2.2 运算符 34 实例023 加密可以这样简单(位运算) 34 实例024 用三元运算符判断奇数和偶数 35 实例025 更精确地使用浮点数 35 实例...

    leveldb jar包以及api说明文件

    Tair中以桶来组织数据,如果按照一个桶一个leveldb实例,在做迁移复制的时候会很方便,但考虑如果在一块磁盘上起多个实例,那么整体看来,多个顺序写变成了随机写,每个实例的compact进程会加剧整个磁盘的随机IO,...

Global site tag (gtag.js) - Google Analytics