用JAVA,删除文件中前100个字节的内容

用JAVA,删除文件中前100个字节的内容
不确定文件大小,但是肯定的是要删除开头的100个字节,能说的详细点么?
截取的字节长度也不确定。
在有就是将得到的内容保存到一个新的文件。
最好是有个个程序的窗口,谢谢

import java.io.FileOutputStream;
import java.io.RandomAccessFile;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class CutFile {
public static void main(String[] args) {
try {
RandomAccessFile raFile = new RandomAccessFile("test.txt", "rw");

raFile.seek(100); // 利用RandomAccessFile定位到第101个字节,之后再读文件

List<byte[]> list = new ArrayList<byte[]>();
byte[] b = new byte[1024];

while (-1 != raFile.read(b)) {
list.add(b); // 将所读取出来的内容以byte数组为单位存放到一个ArrayList当中
}

FileOutputStream outFile = new FileOutputStream("test.txt");
for (Iterator<byte[]> i = list.iterator(); i.hasNext();) {
outFile.write(i.next()); // 将ArrayList里的内容重新写回之前的文件
}

raFile.close();
outFile.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-03-13
基本思路是这样:
用FileInputStream读取你要操作的文件,读取了100字节后,在开始用FileOutputStream将读取到的字节写入一个文件。(其实就是部分复制了:前100字节只读取不写入文件)。如此将得到一个删除掉源文件前100字节内容的新文件。再用这个新文件覆盖原文件,就达到你要求的效果了。 呵呵
第2个回答  2008-03-13
来晚了, 沙发的连方法注释都写了...

用JAVA,删除文件中前100个字节的内容
raFile.seek(100); \/\/ 利用RandomAccessFile定位到第101个字节,之后再读文件 List<byte[]> list = new ArrayList<byte[]>();byte[] b = new byte[1024];while (-1 != raFile.read(b)) { list.add(b); \/\/ 将所读取出来的内容以byte数组为单位存放到一个ArrayList当中 } FileOutputSt...

...每部分40字节,现每次只发送了前40个字节的内容,请帮忙看看哪里的问题...
}tmp=new byte[length];if((len1=bs.length%length)>0){for(int i=0;i<len1;i++)tmp[i]=bs[len*length+i];System.out.println(Arrays.toString(tmp))

JAVA File类 删除文件
1、创建File对象File(String pathname):pathname录入时录入的路径字符串需要注意\/和\\的运用,但是由于java开发出的程序需要运用到不同的系统上,因此,一般以File.separator来代替。2、创建File对象File(File parent,String child):此为创建文件对象的另外一种方式,parent为已创建的对象,这种情况,pare...

用Java读写文件(输入\/输出)-教程
重新定义一个新的Java程序,叫做.vogella.java.files再创造一个FilesUtil.javaclass.要测试这些方法,请创建一个名为file.txt的文本文件,其中包含项目文件夹中的某些内容。创建以下主类并运行它。3. 示例:递归地列出目录的所有文件 Java8提供了一个很好的流来处理树中的所有文件。Files.walk(Paths.get...

java如何将一个文件从某个字节处将文件分为两个文件
使用RandomAccessFile这个类,它可以任意读取文件随意位置的内容,先跳到485484b的位置,再使用读写流把后面的内容写到新的一个文件中即可

如何判断某个文件是否为二进制文件,用Java代码来实现
2.TGA,ICO,CUR只需比对第三个与第五个字符即可。3.PNG比对[89][50]这两个字符。4.GIF比对[47][49][46]与第五个字符。废话不多说了,利用内存流来判断文件的格式,其实判断文件的前几个字节就可以简单的判断这个文件是什么类型的文件,例如 jpg文件 是 FFD8 (从低位到高位就要反过来 D8FF ...

Java代码处理数据技巧(java代码处理数据技巧有哪些)
要求每个Java方法的代码行数不能超过100行; 代码编写按照功能划分,一个接口分为多个方法,每一个方法做什么事情,做到思路清晰; 接口设计尽量做到多兼容性,方便后期开发。 2、数据库设计及SQL规范 不使用MySQL数据库外键约束,通过应用程序枣让逻辑实现关联约束; 适当建立索引,经常作为查询条件的字段、唯一性程度高、长度...

如何用Java判断两个文件内容是否相同
可是实际上中途发现有一个字节不相同就可以判定这两个文件是不同的,根本没必要去读取文件的全部内容。\/\/in1, in2为两个文件的输入流,最后注意流的关闭 int c;while ((c = in1.read()) != -1) { if (in2.read() != c) return false;} return true;...

Java读取文件内容(Java读取文件内容为字符串)
JAVA中读取文件内容的方法有很多,比如按字节读取文件内容,按字符读取文件内容,按行读取文件内容,随机读取文件内容等方法,本文就以上方法的具体实现给出代码,需要的可以直接复制使用 publicclassReadFromFile{ \/** *以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 *\/ publicstaticvoidreadFileByBy...

一个java文件里面最多写多少行代码?
hotspot 虚拟机(咱们平时开发用的sun公司的虚拟机,其他两大商用虚拟机是BEA的JRockit和IBM的J9)里面两个字节来限制大小,所以最多65536行,超过javac会无法编译。而且一个Java方法不能超过64k。一般一个Java类不要有太多行数,如果一个Java代码超过几千甚至过万,个人觉得应该考虑一些代码优化方式,比如...

相似回答