标签:
public class RandomAccessFileDemo3 { public static void main(String[] args) throws IOException { //创建一个基于文件访问的读写模式的RandomAccessFile我们只需要在第二个参数中传入”rw”即可。 RandomAccessFile rafDemo = new RandomAccessFile("rafDemo.txt","rw"); //那么这时在使用RandomAccessFile对该文件的访问就是又可读又可写的。 String str = "我的生活很美好"; //写入这段字符串 /* 首先要让计算机把这段字符串翻译成14个 "int型数字" 的 "数组"! * 按照系统默认字符集将字符串转换为一组字节(转换成了一组int型"低8位"的数组组成了一组字节) * 用String类的getBytes方法把字符串转换成字节. */ byte[] strBytes = str.getBytes(); /* byte[] strBytes = str.getBytes("UTF-8") * 表示以UTF-8的编码进行转换,一个中文三个字节 */ /* * 将给定的字节数组中所有字节一次性写出 * void write(byte[] bytesArr) * void write(byte[] bytesArr,int offset,int len) * 以下使用了write的重载方法,即写到第8个字节的位置. */ rafDemo.write(strBytes,0,8); //文本文件中的内容: 我的美好 /*提示语句*/ System.out.println("写入完毕"); //读写全部进行完毕后必须关闭释放资源 rafDemo.close(); } }
public class RandomAccessFileDemo4 { public static void main(String[] args) throws IOException { //创建一个基于文件访问的读写模式的RandomAccessFile我们只需要在第二个参数中传入”rw”即可。 RandomAccessFile rafDemo = new RandomAccessFile("rafDemo.txt","r"); //那么这时在使用RandomAccessFile对该文件的访问就是又可读又可写的。 byte[] byteArr = new byte[100]; /*这个byte数组,用来保存rafDemo文件的字节量,每次读取最大保存的长度为100字节*/ /* * int read(byte[] d) * 一次性尝试读取给定字节数组(byteArr)总长度的字节量, * 并把读取到的字节量存入到这个数组中,返回值为实际读取到得字节量,若返回值为-1, * 则说明读取到了文件末尾(或者本次什么都没有读到). */ int len = rafDemo.read(byteArr); System.out.println("rafDemo文件占用的字节为: "+len+"字节"); //rafDemo文件占用的字节为: 8字节 (rafDemo内容为 4个汉字) /*提示语句*/ System.out.println("读取完毕"); //读写全部进行完毕后必须关闭释放资源 rafDemo.close(); } }
RandomAccessFileDemo3~4 向文件中读写出一组字节的方法
标签:
原文地址:http://www.cnblogs.com/zyjcxc/p/5448791.html