路徑拼接工具類

package com.jzxs.etp.utils;

import java.io.File;

/**
 * @author zj
 * @version 1.0
 * @functin
 * @date 2020/5/22 14:20
 */

public class PathUtils {
    /**
     * 文件系統路徑 拼接
     *
     * @param rootDir
     * @param subs
     * @return
     */
    public static String filePathJoin(String rootDir, String... subs) {

        if (subs == null || subs.length == 0) {
            return rootDir;
        }
        StringBuilder path = new StringBuilder(rootDir);
        for (String sub : subs) {
            String s = sub;
            //若子目錄前面也帶了斜槓則去掉
            if (s.startsWith("/")) {
                s = s.substring(1);
            }

            if (path.toString().endsWith(File.separator) || path.toString().endsWith("/")) {
                path.append(s);
            } else {
                path.append(File.separator).append(s);
            }
        }
        return path.toString();
    }

    /**
     * http路徑拼接
     *
     * @param uri
     * @param subs
     * @return
     */
    public static String httpPathJoin(String uri, String... subs) {
        if (subs == null || subs.length == 0) {
            return uri;
        }
        StringBuilder path = new StringBuilder(uri);
        for (String sub : subs) {
            String s = sub;
            //若子目錄前面也帶了斜槓則去掉
            if (s.startsWith("/")) {
                s = s.substring(1);
            }
            //拼接
            if (path.toString().endsWith("/")) {
                path.append(s);
            } else {
                path.append("/").append(s);
            }
        }
        return path.toString();
    }


}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章