永发信息网

java装在d盘需要提前在d盘新建一个java文件夹吗

答案:2  悬赏:0  手机版
解决时间 2021-12-25 01:12
  • 提问者网友:棒棒糖
  • 2021-12-24 20:39
最佳答案
  • 五星知识达人网友:妄饮晩冬酒
  • 2022-01-10 04:33
除非你是想安装在D盘的Java文件夹下
不然是不需要新建文件夹的
JDK安装过程中会自动创建需要的文件夹
你只需要给定路径就行了
如果需要的路径设置不了
那就创建文件夹后再设置
全部回答
  • 1楼网友:患得患失的劫
  • 2022-01-10 05:52
需要递归的 import java.io.*; public class copydirectory { // 源文件夹 static string url1 = "f:/photos"; // 目标文件夹 static string url2 = "d:/tempphotos"; public static void main(string args[]) throws ioexception { // 创建目标文件夹 (new file(url2)).mkdirs(); // 获取源文件夹当前下的文件或目录 file[] file = (new file(url1)).listfiles(); for (int i = 0; i < file.length; i++) { if (file[i].isfile()) { // 复制文件 copyfile(file[i],new file(url2+file[i].getname())); } if (file[i].isdirectory()) { // 复制目录 string sourcedir=url1+file.separator+file[i].getname(); string targetdir=url2+file.separator+file[i].getname(); copydirectiory(sourcedir, targetdir); } } } // 复制文件 public static void copyfile(file sourcefile,file targetfile) throws ioexception{ // 新建文件输入流并对它进行缓冲 fileinputstream input = new fileinputstream(sourcefile); bufferedinputstream inbuff=new bufferedinputstream(input); // 新建文件输出流并对它进行缓冲 fileoutputstream output = new fileoutputstream(targetfile); bufferedoutputstream outbuff=new bufferedoutputstream(output); // 缓冲数组 byte[] b = new byte[1024 * 5]; int len; while ((len =inbuff.read(b)) != -1) { outbuff.write(b, 0, len); } // 刷新此缓冲的输出流 outbuff.flush(); //关闭流 inbuff.close(); outbuff.close(); output.close(); input.close(); } // 复制文件夹 public static void copydirectiory(string sourcedir, string targetdir) throws ioexception { // 新建目标目录 (new file(targetdir)).mkdirs(); // 获取源文件夹当前下的文件或目录 file[] file = (new file(sourcedir)).listfiles(); for (int i = 0; i < file.length; i++) { if (file[i].isfile()) { // 源文件 file sourcefile=file[i]; // 目标文件 file targetfile=new file(new file(targetdir).getabsolutepath() +file.separator+file[i].getname()); copyfile(sourcefile,targetfile); } if (file[i].isdirectory()) { // 准备复制的源文件夹 string dir1=sourcedir + "/" + file[i].getname(); // 准备复制的目标文件夹 string dir2=targetdir + "/"+ file[i].getname(); copydirectiory(dir1, dir2); } } } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯