zoukankan      html  css  js  c++  java
  • IO流之RandomAccessFile和File

    通过学习一些经典案例来复习基础

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    RandomAccessFile类

    含义和使用场景随机访问数据的一个类,可以跳转到任意位置来进行数据读写;

    常用方法:          

            RandomAccessFile类为用户提供了两种构造方法:

            1、RandomAccessFile(File file, String mode)    // File指代文件,mode是指可以操作的状态,分别是r w  rw...表示读写;

            2、RandomAccessFile(String name, String mode) //name指代文件名

    eg:

    RandomAccessFile raf0 = new RandomAccessFile("D:/employee.txt", "rw");

           void close(): 关闭文件访问流,及其相关的系统资源;

           int read():在此文件中读取一个数据字节;

           int read(byte[] b): 按字节读取,并返回到字节数,若到末尾则返回-1;

           void seek(long pos): 重要,设置到此文件开头测量到的文件指针偏移量,在该位置发生下一个读取或写入操作;

           .........

    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    public byte[] getBytes(Charset charset):使用给定的字符集的字节序列将此String解码,并将结果存储到一个新的字节数组。
    eg:
    package ts;
    
    import java.io.UnsupportedEncodingException;
    
    public class test2 {
        public static void main(String[] args) throws UnsupportedEncodingException {
            String s = "浣犲ソ"; //"你好"的gbk编码的字符串
            String ss = new String(s.getBytes("GBK"), "UTF-8");
            String sss = new String(s.getBytes("gbk"));
    String s4=new String(s.getBytes("UTF-8")); System.out.println(ss); System.out.println(sss);
    System.out.println(s4); } }
    //对字符串按照 charsetName 进行编码(unicode→charsetName),返回编码后的字节。 //getBytes() 表示按照系统默认编码方式进行。

    //
    你好

    //你好
    //浣犲ソ
    
    

     数组扩容

                  Arrays.copyOf(原始数组,数组的新长度);

    package ts;
    import java.util.Arrays;
    
    public class test {
        public static void main(String[] args) {
            int[] arr1 = {1, 2, 3, 4, 5};
            int[] arr2 = Arrays.copyOf(arr1, 5);
            int[] arr3 = Arrays.copyOf(arr1, 6);
            for(int i = 0; i < arr2.length; i++)
                System.out.print(arr2[i] + " ");
            System.out.println();
            for(int i = 0; i < arr3.length; i++)
                System.out.print(arr3[i] + " ");
        }
    }

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    File类

    常用api :创建文件、删除文件、判断、获取文件相关消息;

    成年人的世界没有那么多的童话,也没有那么多的逆袭。
  • 相关阅读:
    POWERDESIGNER中显示样式设置
    DatagridView 最后编辑状态数据无法自动提交的问题
    oracle 10G以上版本 树形查询新加的几个功能
    net farmework 4安装不了 原因是 HRESULT 0xc8000222
    npoi 导出
    oracle rowtype
    fiddler https
    一次linux站点安装经验
    小米手机安装https证书报错:无法安装该证书 因为无法读取该证书文件
    日志系统
  • 原文地址:https://www.cnblogs.com/shijinglu2018/p/11157265.html
Copyright © 2011-2022 走看看