尚学堂集团旗下品牌: | | |
实战派 好教育     全国咨询热线:400-009-1906

北京 切换校区

全国24小时免费热线

400-009-1906

Java开发中有关文件指针操作-Java培训

时间:2018-07-16   来源:尚学堂   阅读:200
首页> Java开发中有关文件指针操作-Java培训

Java开发中用一个指针变量指向一个文件,这个指针称为文件指针。通过文件指针就可对它所指的文件进行各种操作。关于文件指针的操作有什么需要注意的问题,这个指针在实际应用的时候该怎么做?尚学堂Java培训讲师为大家总结下有关文件指针操作的三个方法。

Java开发中有关文件指针操作-Java培训
文件指针操作
 

getFilePointer()方法

RandomAccessFile的读写都是基于指针的,也就是说总是在指针挡圈所在位置进行读写操作。

long get FilePointer()该方法用于获取当前RandomAccessFile的指针位置。

RandomAccessFile raf
   =new RandomAccessFile(file," rw");
System.out.println(raf.getFilePointer());//0 raf.write(‘A’);
System.out.println(raf.getFilePointer());//1 raf.writeInt(3);
System.out.println(raf.getFilePointer());//5 raf.close();

 

Seek()方法

RandomAccessFile提供了一个方法位于移动指针位置;-void seek(long pos)该方法用于移动当前RandomAccessFile的指针位置。

RandomAccessFile raf 
   =new rANDOMaccessFile(file," rw");
System.out.println(raf.getFilePointer())//0
raf.write (‘A’);//指针位置1
raf.writeInt(3);//指针位置6

//将指针移动到文件开始处(第一个字节的位置)
raf.seek(0);
Systerm.out.println(raf.getFilePointer());//0;
raf.close();

 

skipBytes()方法

RandomAccessFile提供了一个方法可以尝试跳过输入的n个字节以丢弃跳过的字节:-int skipBytes(int n)

该方法可能跳过一些较少量的字节(可能包括零)这可能由任意数量的条件引起;在跳过n个字节之前已达到文件的末尾只是其中的一种可能

此方法不抛出EOFException,返回跳过的实际字节数,如果n为负数,则不跳过任何字节。

public void tesePointer() throws Exception{
        RandomAccessFile raf
             =new RandomAccessFile("rat.dat","r");
        //输出指针位置,默认从0开始(文件的第一个字节位置)
        System.cut.println("指针位置"+raf.getFilePointer());
        读取world,需要将hello这5个字节跳
        raf.skipBytes(5);
        System.cut.println("指针位置"+raf.getFilePointer());
        //读取这5个字节
        byte[] buf=new byte[5];
        raf.read(buf);
        System.cut.println(new String(buf));
        System.cut.println("指针位置"+raf.getFilePointer());
        //将鼠标移动到文件开始
        System.cut.println("指针位置"+raf.getFilePointer());
        raf.close();

 

以上内容就是程序语言中有关Java培训开发中Java中有关文件指针操作的三个方法,希望能够帮到热爱编程的你。想了解更多Java培训技术和前景,请持续关注尚学堂官方网站, 我们会为您更新更多JAVA程序开发的动态,欢迎在留言区留言讨论,预约免费试听相关课程!机会难得!

 

【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

分享:0

相关资讯

  • 北京校区
  • 山西校区
  • 郑州校区
  • 武汉校区
  • 四川校区
  • 长沙校区
  • 深圳校区
  • 上海校区
  • 广州校区

北京海淀区校区(总部):北京市海淀区西三旗街道建材城西路中腾建华商务大厦东侧二层尚学堂
北京京南校区:北京亦庄经济开发区科创十四街6号院1号楼 赛蒂国际工业园
咨询电话:400-009-1906 / 010-56233821
面授课程: JavaEE培训大数据就业班培训大数据云计算周末班培训零基础大数据连读班培训大数据云计算高手班培训人工智能周末班培训
人工智能+Python全栈培训H5+PHP全栈工程师培训视觉设计培训

山西学区地址:山西省晋中市榆次区大学城大学生活广场万科商业A1座702
咨询电话:0354-3052381