为了账号安全,请及时绑定邮箱和手机立即绑定

Java把文件中的内容都读到字节数组,结果显示都为0

Java把文件中的内容都读到字节数组,结果显示都为0

human123 2015-12-20 22:43:49
package com.imooc.io; import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; import java.util.Arrays; public class RafDemo {     public static void main(String[] args) throws IOException{         File demo =new File("demo");         if(!demo.exists())             demo.mkdir();         File file =new File(demo,"raf.dat");         if(!file.exists())             file.createNewFile();                  RandomAccessFile raf=new RandomAccessFile(file, "rw");         //指针的位置         System.out.println(raf.getFilePointer());                  raf.write('A');         System.out.println(raf.getFilePointer());         raf.write('B');                  int i=0x7fffffff;         //用write方法每次只能写一个字节,如果要把i写进去就得写4次         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.write(buf);         System.out.println(Arrays.toString(buf));                                } }
查看完整描述

1 回答

?
qq_连环_04358155

TA贡献34条经验 获得超5个赞

raf.write(buf);这是把数组写进文件吧

查看完整回答
反对 回复 2016-11-20
  • 1 回答
  • 1 关注
  • 3112 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信