// copy file to the program as a transit point, from one file to another
Thinking:
type [] = new new type the flush [1024]
In .read (flush), when the content has been stored into a byte array, then only write to
os.write (flush, 0, len) then refreshed cache, os.flush ()
public class test{
private String path;
private String path2;
private int len;
private File first;
private File last;
private InputStream is;
private OutputStream os;
public static void main(String[]args)
{
test t=new test("C:/Users/10853/eclipse-workspace/hell/src/hell/abc","D:/d/last");
t.copy();
}
public test(String s,String s2)
{
this.path=s;
this.path2=s2;
first=new File(this.path);
last=new File(this.path2);
try{
is=new FileInputStream(first);
os=new FileOutputStream(last);
}catch(FileNotFoundException e)
{
e.printStackTrace();
}
}
public void copy()
{
//分段读取
**byte[] flush =new byte[1024];**
**try {**
**while((len=is.read(flush))!=-1)**
** {**
**os.write(flush,0,len); **
**os.flush();** //写出后要刷新
**}***
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
if(os!=null)
{
os.close();
}
if(is!=null)
{
is.close();
}
}catch(IOException e)
{
e.printStackTrace();
}
}
}
}