归档操作:
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
/**
* 归档器
*/
public class Archiver {
public static void main(String[] args) throws Exception {
FileOutputStream fos = new FileOutputStream("d:/arch/x.xar",true);
fos.write(addFile("d:/pie.png"));
fos.close();
}
public static byte[] addFile(String path) throws Exception{
//文件
File f = new File(path);
//文件名
String fname = f.getName();
//文件名数组
byte[] fnameBytes = fname.getBytes() ;
//文件内容长度
int len = (int)f.length();
//计算总长度
int total = 4 + fnameBytes.length + 4 + len ;