我正在尝试创建一个小应用程序,将一些.jar文件复制到最新的jre中。
无论如何找出这条路是哪条? 我正在查看File类,我发现了几个创建空文件的方法,但是我找不到任何可以帮助我将文件复制到给定路径的方法。
我错过了任何重要的课程吗?
由于
答案 0 :(得分:2)
要复制文件,您可以使用nio库中的java.nio.channels.FileChannel类。 封装
例如:
// Create channel for the source
FileChannel srcChannel = new FileInputStream("srcFileLocation").getChannel();
// Create channel for the destination
FileChannel dstChannel = new FileOutputStream("dstFileLocation").getChannel();
// Copy file contents from source to destination
dstChannel.transferFrom(srcChannel, 0, srcChannel.size());
// Close the channels
srcChannel.close();
dstChannel.close();
答案 1 :(得分:1)
首先,在Java 7(尚未发布)之前没有用于复制文件的辅助方法。其次,尝试复制到JRE目录是不可取的,因为您可能没有足够的权限。要查找JRE的位置,请使用System.getProperty(“java.home”) 要复制:
byte[] buffer = new byte[16384];
InputStream in = new FileInputStream(src);
OutputStream out = new FileOutputStream(dst);
while (true) {
int n = in.read(buffer);
if (n == -1)
break;
out.write(buffer, 0, n);
}
in.close();
out.close();