FileInputSteam,FileOutputStream,DataInputStream and DataOutputStream也支持Byte的读写啊,而且都可以成批读写,我有一个类似的可以看看:if (((args[0].equals("-o")) || (args[0].equals("-O"))) && (args.length == 3)) { DataInputStream in = new DataInputStream( new BufferedInputStream( new FileInputStream(args[1]))); DataOutputStream out; File fout = new File(args[2]); if (fout.exists()) out = new DataOutputStream( new BufferedOutputStream( new FileOutputStream(args[2]))); else out = new DataOutputStream( new BufferedOutputStream( new FileOutputStream(fout))); File fin = new File(args[1]); byte [] buf = new byte[1024]; int nums,offset=0; while ((nums = in.read(buf,offset,1024)) != -1) { out.write(buf,offset,nums); } System.out.println("nums:" + nums); out.close(); in.close(); }; 这是个程序片断,原理如此,自己看吧,实现方法很多的,你可以自己找个更好的方法.
{
DataInputStream in = new DataInputStream(
new BufferedInputStream(
new FileInputStream(args[1])));
DataOutputStream out;
File fout = new File(args[2]);
if (fout.exists())
out = new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream(args[2])));
else
out = new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream(fout)));
File fin = new File(args[1]);
byte [] buf = new byte[1024];
int nums,offset=0;
while ((nums = in.read(buf,offset,1024)) != -1)
{
out.write(buf,offset,nums);
}
System.out.println("nums:" + nums);
out.close();
in.close();
};
这是个程序片断,原理如此,自己看吧,实现方法很多的,你可以自己找个更好的方法.