qq_33168339
2016-02-22 01:10
采纳率: 100%
浏览 1.5k
已采纳

Java怎么实现一个目录工具类,求大神指点

最近我们主管给我布置了一个任务,让我做一个目录类,单位其他同事谁用到就直接调用就可以了。但是现在我一点头绪都没有,不知道咋下手。
首先有个根目录/surfs,根目录下面有ABCD四个子目录,分别点击ABCD四个目录时要进行判断是否初始化,如果已经初始化,会生成16个子目录,子目录也同样这么判断。每个目录都有一个唯一的ID,通过UUID获取。根目录和子目录的关系是 比如根目录是abcdefg,那么他下面的目录依次是abcdefg/cdefg/efg/g,我没哟太多思路。,大神们给点提示就成 多谢了

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • a719195733 2016-02-22 03:35
    已采纳
    public static String[] chars = new String[] { "a", "b", "c", "d", "e", "f",  
        "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s",  
        "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5",  
        "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I",  
        "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V",  
        "W", "X", "Y", "Z" };  
    

    public static String generateShortUuid() {

    StringBuffer shortBuffer = new StringBuffer();

    String uuid = UUID.randomUUID().toString().replace("-", "");

    for (int i = 0; i < 12; i++) {

    String str = uuid.substring(i * 3, i * 3 + 3);

    int x = Integer.parseInt(str, 16);

    shortBuffer.append(chars[x % 0x3E]);

    }

    return shortBuffer.toString();

    }

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • a719195733 2016-02-22 01:45

    可以使用File类,未初始化,file.mkdir()方法生成子文件

    评论
    解决 无用
    打赏 举报
  • qq_33168339 2016-02-22 02:01

    可以详细点吗?这个目录感觉很简单,但是实际做的时候,没有思路,无从下手。我们单位用的是Maven管理项目,也就是让把这个目录做成一个util的工具包,完成后直接用maven打成包 其它人就可以直接使用了。

    评论
    解决 无用
    打赏 举报
  • a719195733 2016-02-22 02:27

    package com.sdhs.cpe.util;

    import java.io.File;

    public class FileUtil {

    /**
     * 初始化方法
     * @param path 根路径
     * @param str  创建的跟路径下的目录
     */
    public void initFile(String path,String str){
        File file=new File(path);
        if(file.exists()){
            File[] files=file.listFiles();
            //长度为0,需要初始化
            if(files.length==0){
                if(str!=null&&str!=""){
                    String temp[]=str.split(",");
                    for(int i=0;i<temp.length;i++){
                        File f=new File(path+"//"+temp[i]);
                        f.mkdir();
                    }
                }
            }
        }
    }
    public static void main(String args[]){
        new FileUtil().initFile("D://surfs","a,b,c,d");
    
    }
    

    }

    评论
    解决 无用
    打赏 举报
  • a719195733 2016-02-22 03:37
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题