java在混合模式下使用URI(Windows和Linux)
我正在尝试使用URI,当客户端和服务器都是Unix或都是Windows时没有问题。。。在使用混合模式(一个是Windows,另一个是服务器)时,我面临以下行为:
例如。 我在angular客户端应用程序中输入了以下路径:
/opt/apache-tomcat-7.0.59/webapps/...
它以以下格式保存为数据库中的URI:
file:///C:/opt/apache-tomcat-7.0.59/webapps/...
我的服务器部署在windows(来自eclipse->;以服务器运行->;tomcat) 因此,似乎因为它在windows上运行,它添加了C:\并将正向斜杠切换为反向斜杠
Paths.get(path).toUri().toString();
或
Paths.get(new URI(((FileResourceId) resource).Uri.toString())).toString();
另一种方法是从我使用的URI获取路径:
Paths.get(((FileResourceId) resource).Uri).toFile().getPath();
获取此值:
C:\opt\apache-tomcat-7.0.59\webapps...
我猜当共享系统可以访问Linux路径时,它不会这样做! 我怎样才能独立于系统
谢谢
共 (0) 个答案