亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

【九月打卡】第10天 文件傳輸基礎——Java IO流 03

標簽:
Java

课程信息:

  • 课程名称:文件传输基础——Java IO流
  • 章节名称:RandomAccessFile基本操作
  • 讲师姓名:Cedar

课程内容:

RandomAccessFile操作步骤如下:

  1. java文件模型:在硬盘上的文件是byte byte byte 存储的,是数据的集合;
  2. 打开文件:有两种模式 “rw”(读写) “r”(只读)
    RandomAccessFile raf = new RandomAccessFile (file, “rw”);
    文件指针,打开文件时指针在开头 point = 0;
  3. 写方法:raf.write(int) —> 只写一个字节(后8位),同时指针指向下一个位置,准备再次写入
  4. 读方法:int b = raf.read() —> 读一个字节
  5. 关闭:文件读写完成以后一定要关闭(Oracle官方说明,若不关闭会产生意想不到的错误)
public static void main(String[] args) throws IOException {
        File demo = new File("demo");
        if(!demo.exists()){
            demo.mkdir();
        }
        File file = new File("raf.dat");
        if(!file.exists()){
            file.createNewFile();
        }

        RandomAccessFile raf = new RandomAccessFile(file, "rw");
        //指针的位置
        System.out.println(raf.getFilePointer());

        raf.write(1);
        System.out.println(raf.getFilePointer());
        raf.write('B');

        int i = 0x7fffffff;
        System.out.println(i);
        raf.write(i >>> 24);
        raf.write(i >>> 16);
        raf.write(i >>> 8);
        raf.write(i);
        System.out.println(raf.getFilePointer());

        //可以直接写一个int
        raf.writeInt(i);

        String s = "中";
        byte[] gbk = s.getBytes("gbk");
        raf.write(gbk);
        System.out.println(raf.length());

        //读文件,必须把指针移到头部
        raf.seek(0);
        //一次性读取,把文件中的内容都读到字节数组中
        byte[] buf = new byte[(int)raf.length()];
        raf.read(buf);

        System.out.println(Arrays.toString(buf));
        for (byte b: buf) {
            System.out.println(Integer.toHexString(b & 0xff)); //16进制输出
        }

        raf.close(); //关闭操作
    }

学习心得:

本次学习我学习了类的操作流程,这对于我们新手了解一个类来说是非常重要的步骤,JAVA提供的操作文件需要五步,通过本次学习会加深我们对类的了解,老师讲的非常好呀,是非常适合我的学习方式!

课程截图:

图片描述
图片描述

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消