Vee*_*era 77 java file-io inputstream
在Java Web应用程序中,假设我想获取XML文件的InputStream,该文件放在CLASSPATH中(即在sources文件夹中),我该怎么做?
cle*_*tus 93
ClassLoader.getResourceAsStream()
.
如下面的评论中所述,如果您处于多ClassLoader
环境(例如单元测试,Web应用程序等),则可能需要使用Thread.currentThread().getContextClassLoader()
.请参见http://stackoverflow.com/questions/2308188/getresourceasstream-vs-fileinputstream/2308388#comment21307593_2308388.
小智 30
ClassLoader.class.getResourceAsStream("/path/file.ext");
Run Code Online (Sandbox Code Playgroud)
Aar*_*lla 12
这取决于XML文件的确切位置.它是在sources文件夹(在"默认包"或"根"中)还是在类的同一文件夹中?
对于前一种情况,您必须使用" /file.xml
"(注意前导斜杠)来查找文件,并且使用哪个类来尝试找到它并不重要.
如果XML文件位于某个类的旁边,那么SomeClass.class.getResourceAsStream()
只需要文件名即可.
Cli*_*int 11
ClassLoader.class.getResourceAsStream("/path/to/your/xml")
并确保您的编译脚本正在将xml文件复制到CLASSPATH中的位置.
归档时间: |
|
查看次数: |
159674 次 |
最近记录: |