本文整理汇总了Java中java.net.URI.getRawSchemeSpecificPart方法的典型用法代码示例。如果您正苦于以下问题:Java URI.getRawSchemeSpecificPart方法的具体用法?Java URI.getRawSchemeSpecificPart怎么用?Java URI.getRawSchemeSpecificPart使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类java.net.URI
的用法示例。
在下文中一共展示了URI.getRawSchemeSpecificPart方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getFileName
import java.net.URI; //导入方法依赖的package包/类
/**
* Returns the file name of the resource references by the URI. Works with jar: URIs, which normally return
* {@code null} if the {@link URI#getPath()} call is used.
* @param uri
* @return The filename, if it can be calculated.
* @throws IllegalArgumentException if the filename cannot be calculated (e.g. if the scheme is not understood).
*/
public static String getFileName(URI uri) throws IllegalArgumentException {
String filename;
if (JAR_URI_SCHEME.equals(uri.getScheme())) {
String ssp = uri.getRawSchemeSpecificPart();
String innerPath;
int bang = ssp.indexOf('!');
if (bang < 0) {
throw new IllegalArgumentException("Invalid jar content URI; missing '!/' path separator: " + uri);
} else {
innerPath = ssp.substring(bang + 1);
}
filename = getPathLastSegment(innerPath);
} else {
String path = uri.getPath();
if (path == null) {
throw new IllegalArgumentException("Cannot calculate filename for unknown opaque URI scheme: " + uri);
}
filename = getPathLastSegment(path);
}
return filename;
}
示例2: uriToPath
import java.net.URI; //导入方法依赖的package包/类
protected Path uriToPath(URI uri) {
String scheme = uri.getScheme();
if ((scheme == null) || !scheme.equalsIgnoreCase(getScheme())) {
throw new IllegalArgumentException("URI scheme is not '" + getScheme() + "'");
}
try {
// only support legacy JAR URL syntax jar:{uri}!/{entry} for now
String spec = uri.getRawSchemeSpecificPart();
int sep = spec.indexOf("!/");
if (sep != -1)
spec = spec.substring(0, sep);
return Paths.get(new URI(spec)).toAbsolutePath();
} catch (URISyntaxException e) {
throw new IllegalArgumentException(e.getMessage(), e);
}
}
示例3: uriToPath
import java.net.URI; //导入方法依赖的package包/类
protected Path uriToPath(URI uri) {
String scheme = uri.getScheme();
if ((scheme == null) || !scheme.equalsIgnoreCase(getScheme())) {
throw new IllegalArgumentException("URI scheme is not '" + getScheme() + "'");
}
try {
// only support legacy JAR URL syntax jar:{uri}!/{entry} for now
String spec = uri.getRawSchemeSpecificPart();
int sep = spec.indexOf("!/");
if (sep != -1) {
spec = spec.substring(0, sep);
}
return Paths.get(new URI(spec)).toAbsolutePath();
} catch (URISyntaxException e) {
throw new IllegalArgumentException(e.getMessage(), e);
}
}
示例4: digestURI
import java.net.URI; //导入方法依赖的package包/类
private void digestURI(final URI uri) {
this.scheme = uri.getScheme();
this.encodedSchemeSpecificPart = uri.getRawSchemeSpecificPart();
this.encodedAuthority = uri.getRawAuthority();
this.host = uri.getHost();
this.port = uri.getPort();
this.encodedUserInfo = uri.getRawUserInfo();
this.userInfo = uri.getUserInfo();
this.encodedPath = uri.getRawPath();
this.path = uri.getPath();
this.encodedQuery = uri.getRawQuery();
this.queryParams = parseQuery(uri.getRawQuery(), Charset.forName(HTTP.UTF_8));
this.encodedFragment = uri.getRawFragment();
this.fragment = uri.getFragment();
}
示例5: digestURI
import java.net.URI; //导入方法依赖的package包/类
private void digestURI(final URI uri) {
this.scheme = uri.getScheme();
this.encodedSchemeSpecificPart = uri.getRawSchemeSpecificPart();
this.encodedAuthority = uri.getRawAuthority();
this.host = uri.getHost();
this.port = uri.getPort();
this.encodedUserInfo = uri.getRawUserInfo();
this.userInfo = uri.getUserInfo();
this.encodedPath = uri.getRawPath();
this.path = uri.getPath();
this.encodedQuery = uri.getRawQuery();
this.queryParams = parseQuery(uri.getRawQuery(), Consts.UTF_8);
this.encodedFragment = uri.getRawFragment();
this.fragment = uri.getFragment();
}