Java实现把一个文件的内容复制到另外一个文件中
解决方案 »
- 大家帮我看看《Core Java》里的通配符的超类型限定表述是不是有问题啊?
- 这个递归哪里出了问题?
- 高手们帮我看看这个问题,太怪异了???
- 提问一个运行结果
- 如何在自己名字的后面括号里加上中文名字呢??
- 在做RMI时遇见的异常,请各位进来看一下
- 想寻找较好的类库说明手册或大全
- 是不是在JDBC中连接DB用DriverManager是只支持单线程? 还可以通过什么方式连接DB?
- JDK给的JFC的例子如何调试和编译。
- 我写了一个有applet的网页,本地浏览没问题,发布之后就不行了?
- 有第三方或者引用时简单一点的分页吗?就是只要在需要分页的Jsp上include分页的jsp就可以实现功能的那种比较方便好用的分页模块。
- 关于JAVA正则表达式的一个疑惑:怎样匹配乘号*?
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class Copy { public static void main(String[] args) {
// TODO Auto-generated method stub
String s = "d:\\1.txt";
String d = "d:\\2.txt";
Copy.fileCopy(s,d);
}
public static void fileCopy(String src,String des){
try {
FileInputStream fis = new FileInputStream(src);
FileOutputStream fos = new FileOutputStream(des);
int temp = fis.read();
while(temp != -1){
fos.write(temp);
temp = fis.read();
}
fis.close();
fos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
看看这个怎么样?
为什么不看看 File的 API帮助呢
没有public int read(byte[] b)
这个方法效率高啊!!!
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.channels.FileChannel;public class Test {
public static void main(String[] args) {
copyFile("a.txt", "b.txt");
}
public static void copyFile(String srcFile, String destFile) {
FileInputStream is = null;
FileOutputStream os = null;
FileChannel fin = null;
FileChannel fout = null;
try {
is = new FileInputStream(srcFile);
os = new FileOutputStream(destFile);
fin = is.getChannel();
fout = os.getChannel();
fin.transferTo(0, fin.size(), fout);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fin.close();
fout.close();
is.close();
os.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
if (!to.exists()) {
to.mkdirs();
}
File[] files = from.listFiles();
for (int i = 0; i < files.length; i++) {
File file1 = files[i];
File file2 = new File(to.getPath() + File.separator
+ files[i].getName());
if (!file1.isDirectory()) {
copyFile(file1, file2);
} else {
copyDir(file1, file2);
}
} } public void copyFile(File src, File dest) {
try {
System.out.println(src.getAbsoluteFile() + " -> "
+ dest.getAbsoluteFile());
FileInputStream in = new FileInputStream(src);
FileOutputStream out = new FileOutputStream(dest);
byte[] buffer = new byte[1024];
while (in.read(buffer) != -1) {
out.write(buffer);
}
out.close();
in.close();
System.out.println("文件拷贝成功");
} catch (Exception e) {
System.out.println("文件拷贝失败");
} } public static void main(String[] args) {
CopyAll t = new CopyAll();
t.copyDir(new File(args[0]), new File(args[1])); }}
http://topic.csdn.net/u/20080222/19/d2e39c2b-9e86-43cd-a924-7f887816f0e6.html