本文整理了Java中cn.hutool.core.io.FileUtil.normalize()
方法的一些代码示例,展示了FileUtil.normalize()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。FileUtil.normalize()
方法的具体详情如下:
包路径:cn.hutool.core.io.FileUtil
类名称:FileUtil
方法名:normalize
[英]修复路径
如果原路径尾部有分隔符,则保留为标准分隔符(/),否则不保留
"/foo//" =》 "/foo/"
"/foo/./" =》 "/foo/"
"/foo/../bar" =》 "/bar"
"/foo/../bar/" =》 "/bar/"
"/foo/../bar/../baz" =》 "/baz"
"/../" =》 "/"
"foo/bar/.." =》 "foo"
"foo/../bar" =》 "bar"
"foo/../../bar" =》 "bar"
"//server/foo/../bar" =》 "/server/bar"
"//server/../bar" =》 "/bar"
"C:\\foo\\..\\bar" =》 "C:/bar"
"C:\\..\\bar" =》 "C:/bar"
"~/foo/../bar/" =》 "~/bar/"
"~/../bar" =》 "bar"
[中]
代码示例来源:origin: looly/hutool
/**
* 获得ClassPath,这个ClassPath路径会文件路径被标准化处理
*
* @param isEncoded 是否编码路径中的中文
* @return ClassPath
* @since 3.2.1
*/
public static String getClassPath(boolean isEncoded) {
final URL classPathURL = getClassPathURL();
String url = isEncoded ? classPathURL.getPath() : URLUtil.getDecodedPath(classPathURL);
return FileUtil.normalize(url);
}
代码示例来源:origin: looly/hutool
/**
* 获得ClassPath,这个ClassPath路径会文件路径被标准化处理
*
* @param isEncoded 是否编码路径中的中文
* @return ClassPath
* @since 3.2.1
*/
public static String getClassPath(boolean isEncoded) {
final URL classPathURL = getClassPathURL();
String url = isEncoded ? classPathURL.getPath() : URLUtil.getDecodedPath(classPathURL);
return FileUtil.normalize(url);
}
代码示例来源:origin: looly/hutool
/**
* 获得绝对路径Path<br>
* 对于不存在的资源,返回拼接后的绝对路径
*
* @return 绝对路径path
*/
public final String getAbsolutePath() {
if (FileUtil.isAbsolutePath(this.path)) {
return this.path;
}
// url在初始化的时候已经断言,此处始终不为null
return FileUtil.normalize(URLUtil.getDecodedPath(this.url));
}
代码示例来源:origin: looly/hutool
/**
* 获得绝对路径Path<br>
* 对于不存在的资源,返回拼接后的绝对路径
*
* @return 绝对路径path
*/
public final String getAbsolutePath() {
if (FileUtil.isAbsolutePath(this.path)) {
return this.path;
}
// url在初始化的时候已经断言,此处始终不为null
return FileUtil.normalize(URLUtil.getDecodedPath(this.url));
}
代码示例来源:origin: looly/hutool
normalPath = StrUtil.EMPTY;
} else {
normalPath = normalize(path);
if (isAbsolutePath(normalPath)) {
if (null != url) {
return FileUtil.normalize(URLUtil.getDecodedPath(url));
return normalize(classPath.concat(path));
代码示例来源:origin: looly/hutool
normalPath = StrUtil.EMPTY;
} else {
normalPath = normalize(path);
if (isAbsolutePath(normalPath)) {
if (null != url) {
return FileUtil.normalize(URLUtil.getDecodedPath(url));
return normalize(classPath.concat(path));
代码示例来源:origin: looly/hutool
/**
* 标准化Path格式
*
* @param path Path
* @return 标准化后的path
*/
private String normalizePath(String path) {
// 标准化路径
path = FileUtil.normalize(path);
path = StrUtil.removePrefix(path, StrUtil.SLASH);
Assert.isFalse(FileUtil.isAbsolutePath(path), "Path [{}] must be a relative path !", path);
return path;
}
}
代码示例来源:origin: looly/hutool
/**
* 标准化Path格式
*
* @param path Path
* @return 标准化后的path
*/
private String normalizePath(String path) {
// 标准化路径
path = FileUtil.normalize(path);
path = StrUtil.removePrefix(path, StrUtil.SLASH);
Assert.isFalse(FileUtil.isAbsolutePath(path), "Path [{}] must be a relative path !", path);
return path;
}
}
代码示例来源:origin: looly/hutool
/**
* 获得相对子路径,忽略大小写
*
* 栗子:
*
* <pre>
* dirPath: d:/aaa/bbb filePath: d:/aaa/bbb/ccc =》 ccc
* dirPath: d:/Aaa/bbb filePath: d:/aaa/bbb/ccc.txt =》 ccc.txt
* dirPath: d:/Aaa/bbb filePath: d:/aaa/bbb/ =》 ""
* </pre>
*
* @param dirPath 父路径
* @param filePath 文件路径
* @return 相对子路径
*/
public static String subPath(String dirPath, String filePath) {
if (StrUtil.isNotEmpty(dirPath) && StrUtil.isNotEmpty(filePath)) {
dirPath = StrUtil.removeSuffix(normalize(dirPath), "/");
filePath = normalize(filePath);
final String result = StrUtil.removePrefixIgnoreCase(filePath, dirPath);
return StrUtil.removePrefix(result, "/");
}
return filePath;
}
代码示例来源:origin: looly/hutool
/**
* 获得相对子路径,忽略大小写
*
* 栗子:
*
* <pre>
* dirPath: d:/aaa/bbb filePath: d:/aaa/bbb/ccc =》 ccc
* dirPath: d:/Aaa/bbb filePath: d:/aaa/bbb/ccc.txt =》 ccc.txt
* dirPath: d:/Aaa/bbb filePath: d:/aaa/bbb/ =》 ""
* </pre>
*
* @param dirPath 父路径
* @param filePath 文件路径
* @return 相对子路径
*/
public static String subPath(String dirPath, String filePath) {
if (StrUtil.isNotEmpty(dirPath) && StrUtil.isNotEmpty(filePath)) {
dirPath = StrUtil.removeSuffix(normalize(dirPath), "/");
filePath = normalize(filePath);
final String result = StrUtil.removePrefixIgnoreCase(filePath, dirPath);
return StrUtil.removePrefix(result, "/");
}
return filePath;
}
代码示例来源:origin: cn.hutool/hutool-all
/**
* 获得ClassPath,这个ClassPath路径会文件路径被标准化处理
*
* @param isEncoded 是否编码路径中的中文
* @return ClassPath
* @since 3.2.1
*/
public static String getClassPath(boolean isEncoded) {
final URL classPathURL = getClassPathURL();
String url = isEncoded ? classPathURL.getPath() : URLUtil.getDecodedPath(classPathURL);
return FileUtil.normalize(url);
}
代码示例来源:origin: cn.hutool/hutool-all
/**
* 获得绝对路径Path<br>
* 对于不存在的资源,返回拼接后的绝对路径
*
* @return 绝对路径path
*/
public final String getAbsolutePath() {
if (FileUtil.isAbsolutePath(this.path)) {
return this.path;
}
// url在初始化的时候已经断言,此处始终不为null
return FileUtil.normalize(URLUtil.getDecodedPath(this.url));
}
代码示例来源:origin: cn.hutool/hutool-all
normalPath = StrUtil.EMPTY;
} else {
normalPath = normalize(path);
if (isAbsolutePath(normalPath)) {
if (null != url) {
return FileUtil.normalize(URLUtil.getDecodedPath(url));
return normalize(classPath.concat(path));
代码示例来源:origin: cn.hutool/hutool-all
/**
* 标准化Path格式
*
* @param path Path
* @return 标准化后的path
*/
private String normalizePath(String path) {
// 标准化路径
path = FileUtil.normalize(path);
path = StrUtil.removePrefix(path, StrUtil.SLASH);
Assert.isFalse(FileUtil.isAbsolutePath(path), "Path [{}] must be a relative path !", path);
return path;
}
}
代码示例来源:origin: cn.hutool/hutool-all
/**
* 获得相对子路径,忽略大小写
*
* 栗子:
*
* <pre>
* dirPath: d:/aaa/bbb filePath: d:/aaa/bbb/ccc =》 ccc
* dirPath: d:/Aaa/bbb filePath: d:/aaa/bbb/ccc.txt =》 ccc.txt
* dirPath: d:/Aaa/bbb filePath: d:/aaa/bbb/ =》 ""
* </pre>
*
* @param dirPath 父路径
* @param filePath 文件路径
* @return 相对子路径
*/
public static String subPath(String dirPath, String filePath) {
if (StrUtil.isNotEmpty(dirPath) && StrUtil.isNotEmpty(filePath)) {
dirPath = StrUtil.removeSuffix(normalize(dirPath), "/");
filePath = normalize(filePath);
final String result = StrUtil.removePrefixIgnoreCase(filePath, dirPath);
return StrUtil.removePrefix(result, "/");
}
return filePath;
}
内容来源于网络,如有侵权,请联系作者删除!