zoukankan      html  css  js  c++  java
  • java io之RandomAccessFile的用法

     Employee.java
    1
    package com.io; 2 3 public class Employee { 4 5 private String name; 6 7 private int age; 8 9 private static final int LEN = 8; 10 11 public Employee(String name, int age) { 12 super(); 13 if (name.length() > LEN) { 14 name = name.substring(0, LEN); 15 } else { 16 while (name.length()<LEN) { 17 name += "\u0000"; 18 } 19 } 20 this.age = age; 21 this.name = name; 22 } 23 24 public String getName() { 25 return name; 26 } 27 28 public void setName(String name) { 29 this.name = name; 30 } 31 32 public int getAge() { 33 return age; 34 } 35 36 public void setAge(int age) { 37 this.age = age; 38 } 39 40 41 42 43 }

    RamdomFileTest.java

     1 package com.io;
     2 
     3 import java.io.IOException;
     4 import java.io.RandomAccessFile;
     5 
     6 public class RamdomFileTest {
     7     
     8     public static void main(String[] args) throws IOException {
     9         Employee e1 = new Employee("zhangsan",23);
    10         Employee e2 = new Employee("lisi",24);
    11         Employee e3 = new Employee("wangwu",25);
    12         
    13         RandomAccessFile ra = new RandomAccessFile("f:\\1.txt","rw");
    14         ra.write(e1.getName().getBytes());
    15         ra.writeInt(e1.getAge());
    16         ra.write(e2.getName().getBytes());
    17         ra.writeInt(e2.getAge());
    18         ra.write(e3.getName().getBytes());
    19         ra.writeInt(e3.getAge());
    20         ra.close();
    21         
    22         RandomAccessFile raf = new RandomAccessFile("f:\\1.txt","r");
    23         int len = 8;
    24         raf.skipBytes(12);
    25         System.out.println("第二个员工的信息:");
    26         String str = "";
    27         for (int i = 0; i < len; i++) {
    28             str = str+ (char)raf.readByte();
    29         }
    30         System.out.println("name:"+str);
    31         System.out.println("age:"+raf.readInt());
    32         
    33         System.out.println("第一个员工的信息:");
    34         raf.seek(0);
    35         str = "";
    36         for (int i = 0; i < len; i++) {
    37             str = str + (char)raf.readByte();
    38         }
    39         System.out.println("name:"+str);
    40         System.out.println("age:"+raf.readInt());
    41         
    42         System.out.println("第三个员工的信息:");
    43         raf.skipBytes(12);
    44         str = "";
    45         for (int i = 0; i < len; i++) {
    46             str = str + (char)raf.readByte();
    47         }
    48         System.out.println("name:"+str);
    49         System.out.println("age:"+raf.readInt());
    50         
    51         System.out.println("程序执行完毕...");
    52     }
    53 }

    打印结果:

    第二个员工的信息:
    name:lisi

    age:24
    第一个员工的信息:

    name:zhangsan
    age:23
    第三个员工的信息:
    name:wangwu

    age:25
    程序执行完毕...

  • 相关阅读:
    项目部署在windows下的tomcat里
    获取tomcat端口号的三种方式
    windows 下载安装github
    Exception in thread "main" java.lang.IllegalArgumentException: Illegal character in query at index 189......
    HTTP协议头了解
    服务器nginx安装
    php源码安装
    php简化指令,以及php.ini配置
    配置php7 以支持swoole
    swoole install
  • 原文地址:https://www.cnblogs.com/chasewade/p/2725572.html
Copyright © 2011-2022 走看看