java创建多级目录或文件夹

java写入文件前常常会遇到。需要创建多级目录,以下代码便可以轻松做到。
String   path="D:/xxx/yyy/zzz/";
     StringTokenizer   st=new   StringTokenizer(path,"/");
     String   path1=st.nextToken()+"/";
     String   path2 =path1;
     while(st.hasMoreTokens())
     {
           path1=st.nextToken()+"/";
           path2+=path1;
           File inbox   =   new File(path2);
           if(!inbox.exists())
                inbox.mkdir();
     }


复制目录或者文件夹到新的目录下

/**     
     *     复制整个文件夹内容     
     *     @param     oldPath     String     原文件路径     如:d:/aaaa/css 
     *     @param     newPath     String     复制后路径     如:f:/xxx/yyy/zzz/css     
     */     
 public static void copyFolder(String oldPath, String newPath) {

		try {
			(new File(newPath)).mkdirs(); //如果文件夹不存在     则建立新文件夹     
			File a = new File(oldPath);
			String[] file = a.list();
			File temp = null;
			for (int i = 0; i < file.length; i++) {
				if (oldPath.endsWith(File.separator)) {
					temp = new File(oldPath + file[i]);
				} else {
					temp = new File(oldPath + File.separator + file[i]);
				}

				if (temp.isFile()) {
					FileInputStream input = new FileInputStream(temp);
					FileOutputStream output = new FileOutputStream(newPath
							+ "/" + (temp.getName()).toString());
					byte[] b = new byte[1024 * 5];
					int len;
					while ((len = input.read(b)) != -1) {
						output.write(b, 0, len);
					}
					output.flush();
					output.close();
					input.close();
				}
				if (temp.isDirectory()) {//如果是子文件夹     
					copyFolder(oldPath + "/ " + file[i], newPath + "/ "
							+ file[i]);
				}
			}
		} catch (Exception e) {
			System.out.println("复制整个文件夹内容操作出错 ");
			e.printStackTrace();

		}

	}     

你可能感兴趣的:(java,css,F#)