Java随机访问流RandomAccessFile用法示例

Java随机访问流RandomAccessFile用法示例

写一个文件, 写入26个小写字母,再打开这个文件, 把前10个换成大写字母,后10个替换为数字字符.
这里主要是用RandomAccessFile随机访问流来处理这个问题:


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

/**
 * 写一个文件, 写入26个小写字母,再打开这个文件, 把前10个换成大写字母,后10个替换为数字字符.
 */
public class Test5 {
    public static void main(String[] args) throws IOException {
        File file = new File("text5.txt");
        RandomAccessFile raf = new RandomAccessFile(file, "rw");
        for (int i = 0; i < 26; i++) {
            raf.write('a' + i); // 循环写入26个小写字母
        }
        byte[] temp = new byte[10];
        raf.seek(0);
        raf.read(temp, 0, 10);// 从0位置读取10个字节的数据存入temp字节数组
        raf.seek(0);
        for (long i = 0; i < 10; i++) {
            raf.write(temp[(int) i] - 32);// 从0位置循环写入大写字母
        }
        long pos = raf.length() - 10;
        raf.seek(pos);
        raf.read(temp, 0, 10);// 从pos位置读取10个字节数据到temp字节数组
        raf.seek(pos);
        for (long i = 0; i < 10; i++) {
            // 循环写入字符转化的数字
            raf.writeBytes(String.valueOf((int) temp[(int) i]));
        }
        raf.close();
    }
}

猜你喜欢

转载自www.cnblogs.com/alltoforever/p/10054728.html
今日推荐