1. package coreJava;
  2.  
  3. import java.io.File;
  4. import java.io.IOException;
  5. import java.io.RandomAccessFile;
  6. import java.util.Arrays;
  7.  
  8. public class RandomAccessFileWriteandRead {
  9.  
  10. public static void main(String[] args)throws IOException {
  11. // TODO Auto-generated method stub
  12.  
  13. File demo = new File("demo");
  14. if(!demo.exists())
  15. demo.mkdir();
  16. File file = new File(demo,"raf.dat");
  17. if(!file.exists())
  18. file.createNewFile();
  19. RandomAccessFile raf = new RandomAccessFile(file,"rw");
  20. //获取指针的位置:
  21. System.out.println(raf.getFilePointer());
  22.  
  23. raf.write('A');//只写了一个字节
  24. System.out.println(raf.getFilePointer());
  25. raf.write('B');
  26.  
  27. int i = 0x7fffffff;
  28.  
  29. //用write方法一次只能写一个字节。如果要把i写进去的就得写四次
  30. raf.write(i>>>24);//高8位
  31. raf.write(i>>>16);
  32. raf.write(i>>>8);
  33. raf.write(i);
  34. System.out.println(raf.getFilePointer());
  35. //可以直接写一个int
  36. raf.writeInt(i);
  37. String s = "中";
  38. byte[] gbk = s.getBytes("gbk");
  39. raf.write(gbk);
  40. System.out.println(raf.length());
  41.  
  42. //读文件必须把指针移动到头部
  43. raf.seek(0);
  44.  
  45. //一次性读取
  46. byte[] buf = new byte[(int)raf.length()];
  47. raf.read(buf);
  48. System.out.println(Arrays.toString(buf));
  49. for(byte b:buf){
  50. System.out.print(Integer.toHexString(b & 0xff)+" ");
  51. }
  52. String s1 = new String(buf);
  53. System.out.println(s1);
  54.  
  55. //关闭文件
  56. raf.close();
  57.  
  58. }
  59.  
  60. }

RandomAccessFile类的使用(随机读取java中的文件)的更多相关文章

  1. Java中的文件操作(一)RandomAccessFile

    今天,学到的是java中的文件操作. Java.IO.File Java中操作文件用到RandomAccessFile类,既可以读取文件内容,也可以向文件输出数据,但不同与普通输入/输出流的是Rand ...

  2. java中常量文件的配置与读取

    java中常量文件的配置与读取: package com.floor.shop.user.util; import java.io.InputStream; import java.io.InputS ...

  3. 3,Java中的文件IO流

    1,File类 ··· 概念:File对象可以表示一个文件或目录.可以对其进行增删改查. ··· 常用方法:     File f = new File(".");     判断是 ...

  4. Java中的文件操作

    在使用计算机编程中,常常会用到对于文件的操作,以下是我对于Java中文件的相关内容学习之后的一个总结和在学习过程中遇到的一些问题. 一.什么是文件 对于文件进行操作,首先我们要知道什么是文件.在此之前 ...

  5. JAVA中获取文件MD5值的四种方法

    JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...

  6. java中把文件拷贝到指定目录下最简单几种方法

    java中把文件拷贝到指定目录下最简单几种方法   String savePath = "D:/file";// 文件保存到d盘的file目录下 File savefile = n ...

  7. Java中删除文件、删除目录及目录下所有文件(转)

    原文链接:Java中删除文件.删除目录及目录下所有文件 知识点:File.delete()用于删除“某个文件或者空目录”!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除,具体代码示例如下: ...

  8. Java中获取文件路径

    Java中获取文件路径 1.实例说明 (1)得到 ClassPath的绝对URI路径 Thread.currentThread().getContextClassLoader().getResourc ...

  9. Java中移动文件或目录的方法盘点

    本文不再更新,可能存在内容过时的情况,实时更新请移步原文地址:Java中移动文件或目录的方法盘点: import org.apache.commons.io.FileUtils; import jav ...

随机推荐

  1. [转]Best way to sort a DropDownList in MVC3 / Razor using helper method

    本文转自:http://stackoverflow.com/questions/7223185/best-way-to-sort-a-dropdownlist-in-mvc3-razor-using- ...

  2. UVA 11021 - Tribles(概率)

    http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=481&page=s ...

  3. mongodb学习相关网址

    1.MongoDB官网 https://www.mongodb.org 2.MongoDB教程 http://www.yiibai.com/mongodb 3.MongoDB教程http://www. ...

  4. 在.bashrc中,使用python获取本机IP地址(现在只支持wlan)

    其实最好的办法是写个单独的脚本去查找IP,但是如果实在不愿意单写一个脚本文件,也可以直接将代码嵌入.bashrc中 在~/.bashrc下加入下面这行代码即可使用python获取本机的wlan的IP地 ...

  5. SSRS生成报表

    使用程序运行Reporting Service自动生成文件,可以参数使用ReportExecutionService.Render方法进行处理. 1.     连接至Reporting Service ...

  6. 一个ASP函数库

    <% '****************************** '类名: '名称:通用库 '日期:2008/10/28 '作者:by xilou '网址: '描述:通用库 '版权:转载请注 ...

  7. C#3.0 集合

    实现IEnumerable<T>伴随一个迭代: public class MyGenCollection : IEnumerable<int> { int[] data = { ...

  8. springmvc(六)——视图和视图解析器

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoIAAAGrCAIAAADb2WEhAAAgAElEQVR4nOzdaVhTd78vfF8/z772c9 ...

  9. ubuntu下boost的配置方法

    boost版本为: boost_1_52_0ubuntu版本为:ubuntu-12.04.1-desktop-i386 这里有两种安装方法: =============第一种: 也是最简单的:进入li ...

  10. java 中hashcode和equals 总结

    一.概述            在Java中hashCode的实现总是伴随着equals,他们是紧密配合的,你要是自己设计了其中一个,就要设计另外一个.当然在多数情况下,这两个方法是不用我们考虑的,直 ...