繁体   English   中英

使用getResourceAsStream()方法从远程位置读取属性文件

[英]Reading a property file from a remote location using getResourceAsStream() method

我可以使用以下代码从Internet的远程位置读取属性文件吗?

InputStream is = getClass().getResourceAsStream("/filename.properties");
Properties pro = new Properties();
pro.load(is);
// ...

我可以将/filename.properties替换为192.168.173.238/D:/war/filename.properties之类的远程路径吗? 如果是,我应该如何指定路径? 此代码在Apache Tomcat中运行。

如果URL可用(如您在URL#openStream()浏览器的地址栏中输入的那样),请使用URL#openStream()URLConnection#getInputStream()

InputStream is = new URL(url).openStream();

如果本地磁盘文件系统路径可用(如您在磁盘资源管理器的地址栏中输入的那样),请使用FileInputStream

InputStream is = new FileInputStream(path);

就那么简单。

您的下一个问题可能是“正确的URL或磁盘文件系统路径是什么?” 根据目前提供的信息无法回答。

您好:我可以使用以下代码从Internet的远程位置读取属性文件。

可能不是。 您只能使用它来读取CLASSPATH上可用的属性文件。 除非您使用RMI代码库功能或URLClassLoaders之类的东西,否则CLASSPATH不包含网络位置。

您似乎并不了解getResourceAsStream()的实际用途。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM