这样拷贝文件总是不精确,用你的代码试了拷贝后的文件比原来小了
用下面的方法可以精确拷贝原来的文件
import java.io.*;
import java.nio.*;
import java.nio.channels.*;
public class HtmlReader {
public static void main(String[] args) throws Exception {
try
{
FileInputStream input = new FileInputStream( "a.jpg" );
FileOutputStream output = new FileOutputStream( "b.jpg" );
FileChannel infileChannel = input.getChannel();
FileChannel outfileChannel = output.getChannel();
long size = infileChannel.size();
infileChannel.transferTo( 0, size, (WritableByteChannel)outfileChannel);
}
catch( IOException e )
{
System.out.println( e );
}
}
}
用下面的方法可以精确拷贝原来的文件
import java.io.*;
import java.nio.*;
import java.nio.channels.*;
public class HtmlReader {
public static void main(String[] args) throws Exception {
try
{
FileInputStream input = new FileInputStream( "a.jpg" );
FileOutputStream output = new FileOutputStream( "b.jpg" );
FileChannel infileChannel = input.getChannel();
FileChannel outfileChannel = output.getChannel();
long size = infileChannel.size();
infileChannel.transferTo( 0, size, (WritableByteChannel)outfileChannel);
}
catch( IOException e )
{
System.out.println( e );
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货