⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fileutil.java

📁 Ntsky文件上传组件! 是别人写好了的。直接用就可以了!
💻 JAVA
字号:
/*
 * 创建日期 2004-10-18
 *
 * TODO 
 */
package com.ntsky.file;

import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.ArrayList;
import java.util.StringTokenizer;

import java.util.regex.*;

/**
 * @author Administrator
 * 
 * TODO
 */
public class FileUtil {

    /**
     * 特殊字符转
     */
    public static String htmlEncode(String str) {
        if (str == null) {
            str = "";
            return str;
        }
        str = str.trim(); //去掉首尾空格
        /*// 正则表达式替换
        // 定义替换模板
        Pattern pattern = Pattern.compile("\\");
        // 定义替换的原始主字符串
        Matcher matcher = pattern.matcher(str);
        str = matcher.replaceAll("/");*/
        str = replace(str, "\\", "/");    
        return str;
    }
    
    /**
     * 创建目录的方法
     * @param fileDir
     * @param context
     */
    public static void makeDir(String fileDir,String context){
        // 根据目录参数,创建无限层的目录结构
        StringTokenizer stringTokenizer = new StringTokenizer(fileDir, "/");
        String strTemp = "";
        while (stringTokenizer.hasMoreTokens()) {
            String str = stringTokenizer.nextToken();
            if("".equals(strTemp)){
                strTemp = str;
            
            }
            else{
                strTemp = strTemp + "/" + str;
            }
            // System.out.println("context + strTemp " + context + strTemp);
            File dir = new File(context + strTemp);
            if (!dir.isDirectory()) {
                dir.mkdirs();
            }
        }      
    }
    
    
    /**
     * 创建文件的方法
     *
     */
    public static File makeFile(String filePath){
        File file = new File(filePath);
        if (!file.exists()) {
            try {
                file.createNewFile();
            } catch (IOException ex) {
                System.out.println("创建文件错误... " + ex.getMessage());
            }
        }
        return file;
    } 
    
    
    public static void testPattern(){
        Pattern p=null;
        Matcher m=null; //操作的字符串
        
        p = Pattern.compile("ab");

        m = p.matcher("aaaaab");

        String s = m.replaceAll("d"); 

        System.out.println(s+"< br>");

    }
    /**
     * 字符串转换方法
     * @param source String
     * @param oldString String
     * @param newString String
     * @return String
     */
    public static String replace(String source, String oldString,
                                 String newString) {

        StringBuffer output = new StringBuffer();

        int lengthOfsource = source.length(); //源字符串长度
        int lengthOfold = oldString.length(); //老字符串长度

        int posStart = 0; //开始搜索位置
        int pos; //搜索到的老字符串的位置

        //source.indexOf(oldString,posStart)检索某子串在字符串postStart以后第一次出现的位置,如果未找到就返回一个-1。
        while ( (pos = source.indexOf(oldString, posStart)) >= 0) { //得到字符串的位置(eg:如果有<br>就执行,没有就跳出,不要处理。)

            //将以posStart起始以pos-1结束之间的内容拷贝到另一个字符串中。因为posStar从0开始的。
            output.append(source.substring(posStart, pos)); //append方法将文本添加到当前StringBuffer对象内容的结尾。
            output.append(newString); //替换成新字符串

            posStart = pos + lengthOfold; //位置也变为找到了之后的位置,pos为得到第一次出现字符的位置,lengthold为字符的长度
        }

        if (posStart < lengthOfsource) {
            //source.substring(posStart)以lengthOfsource开始的字符串拷贝到列一个字符串中
            output.append(source.substring(posStart));
        }
        //这个方法将其内容转换成一个可以被用于输出的字符串对象。它允许操作对应的文本用于输出或数据存储。
        return output.toString();
    }
  
    /**
     * 设置的文件类型是否符合
     * 
     * @param fileType
     * @return
     */
    public static List getFileType(String fileType) {
        StringTokenizer st = new StringTokenizer(fileType, ",");
        List listType = new ArrayList();
        // System.out.println(listType + "包含','的元素 : " + st.countTokens() + "\n\r");
        while (st.hasMoreTokens()) {
            listType.add(st.nextToken());
        }
        return listType;
    }

    /**
     * 获得目录全名
     * 
     * @return String
     */
    public static String getAllPath(String filePath) {
        if (!filePath.endsWith("/")) {
            filePath += "/";
        }
        return filePath;
    }

    public static void main(String[] args) {
       FileUtil.makeDir("abcdaa","D:/webserver/resin/webapps/upload/");        
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -