----------------------
android培训
java培训 期待与您交流! ----------------------
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59package com.io.randomaccessfile; import java.io.IOException; import java.io.RandomAccessFile; /** * 该类不是IO体系中的子类,而是直接集成自Object * 但是它是IO中成员,因为它具备读写功能 * 内部封装了一个大型byte数组,而且通过指针数组的元素惊醒操作 * 可以通过getFilePointer获取指针位置,同时可以通过seek改变指针的位置 * 其实文成读写的原理就是内部封装了字节输入流和输出流 * 通过构造函数可以看出,该类只能操作硬盘文件 * 而且操作文件还有模式:只读r,读写rw等等 * 而且该对象的构造函数要操作的文件不存在,会自动创建,如果存在,不会覆盖,会直接调用存在的 * * 如果模式为只读r:不会创建文件,会去读取一个已存在的文件,如果文件不存在,则会出现异常 * 如果模式为可读可写rw:操作的文件不存在,会自动创建,如果存在,不会覆盖,会直接调用 * @author wjw */ public class RandowAccessFile_class { public static void main(String[] args) throws IOException { // writeMethod(); readMethod(); } public static void readMethod() throws IOException{ RandomAccessFile raf=new RandomAccessFile("g:/java/randomAccessFile.txt","r"); raf.seek(8*5);//改变指针的位置,把指针移动到数组的第8*n个位置 byte[]b=new byte[4]; // raf.read(b); // String name=new String(b); // System.out.println(name); // int age=raf.readInt(); // System.out.println(age); raf.read(b); String name1=new String(b); System.out.println(name1); int age1=raf.readInt(); System.out.println(age1); raf.close(); } public static void writeMethod() throws IOException{ RandomAccessFile raf=new RandomAccessFile("g:/java/randomAccessFile.txt","rw"); //当然写入数据的时候也可以指定指针的 raf.seek(8*5); raf.write("战三22".getBytes()); raf.writeInt(99);//注意这里,这里用的writeInt()方法,此方法可以一次写8个字节,因为整形有八个字节,所以可以一次写入 raf.write("李四22".getBytes()); raf.writeInt(120); raf.close(); } }
----------------------
android培训
java培训 期待与您交流! ----------------------
详细请查看
http://edu.csdn.net/heima
最后
以上就是含蓄凉面最近收集整理的关于黑马程序员——RandomAccessFile随机读写数据的全部内容,更多相关黑马程序员——RandomAccessFile随机读写数据内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复