标签: url uri file path
File to URI:
File file = ...;
URI uri = file.toURI();
File to URL:
File file = ...;
URL url = file.toURI().URL();
URL to File:
URL url = ...;
File file = new Path(url.getPath()).toFile();
URI to URL:
URI uri = ...;
URL url = uri.toURL();
URL to URI:
URL url = ...;
URI uri = url.toURI();
一般情况下采用上述方式都可以安全的使用.
但是, 当处理本地路径且有空格,或者特殊字符,比如汉字等. 路径在相互的转换过程中, 可能会出现转换的无效字符错误异常.
所以, 可以使用Eclipse提供的工具类org.eclipse.core.runtime.URIUtil (插件: org.eclipse.equinox.simpleconfigurator)来进行转换.
URL URI File Path 转换(原创)
比如URL to File:
URL url = ...;
File file = URIUtil.toFile(URIUtil.toURI(url));
当URL, URI直接互相转换时,也可以使用该URIUtil工具类.
toURI
toURL
还有一个工具类,就是org.eclipse.core.runtime.FileLocator(插件: org.eclipse.equinox.common) 也可以对URL进行File的格式化. 比如toFileURL方法.
附源码:
package org.eclipse.equinox.internal.simpleconfigurator.utils;
import java.io.File;
import java.net.*;
public class URIUtil {
private static final String SCHEME_FILE = "file"; //$NON-NLS-1$
private static final String UNC_PREFIX = "//"; //$NON-NLS-1$