日期:2014-05-19  浏览次数:20694 次

各位路过的大牛来看一下,简单的IO 复制 剪切问题
package test;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class demo1 {
public static void main(String[] args) throws IOException
{
File file=new File("test1.txt");
file.createNewFile();
FileOutputStream fos = new FileOutputStream("e:/test1.txt",true);
FileInputStream fis =new FileInputStream("test1.txt");
ByteArrayOutputStream bos=new ByteArrayOutputStream();

fos.write("你个2货".getBytes());
int len=-1;
byte[] buff=new byte[6];
while((len=fis.read(buff))!=-1)
{
bos.write(buff,0,len);
}
String msg=new String(bos.toByteArray());
System.out.println(msg);

bos.close();
}
}

这样是复制吗?我怎么看都不像的样子,麻烦修改下, 还有剪切...file.delete(); 也麻烦顺便发下 ,谢谢了

------解决方案--------------------
/** *//**以文件流的方式复制文件 
* @param src 文件源目录 
* @param dest 文件目的目录 
* @throws IOException 
*/ 
public void copyFile(String src,String dest) throws IOException...{ 
FileInputStream in=new FileInputStream(src); 
File file=new File(dest); 
if(!file.exists()) 
file.createNewFile(); 
FileOutputStream out=new FileOutputStream(file); 
int c; 
byte buffer[]=new byte[1024]; 
while((c=in.read(buffer))!=-1)...{ 
for(int i=0;i<c;i++) 
out.write(buffer[i]); 

in.close(); 
out.close(); 

该方法经过测试,支持中文处理,并且可以复制多种类型,比如txt,xml,jpg,doc等多种格式