fis = new FileInputStream(file);
byte[] buf = new byte[65536];
int num = fis.read(buf, 0, x);请问当中的偏移地址“x”最大能到多少?能不能超过4G?

解决方案 »

  1.   

    我现在有文件大于2G,当“x”大于2G时就出错,有什么办法可以处理这个问题呢?
      

  2.   

    这个参数是int型的,java 的int 是32位的带符号数字。
    使用32 位有正负号整数计算,能处理的最大十进位数字为2147483647。
    不到4G呢
      

  3.   

    那就是说JAVA对2G以上的文件无法处理了??如果可以处理,传输一个2G以上的文件该怎么编码?