sysLoader.getResource() problem in java

后端 未结 3 1234
礼貌的吻别
礼貌的吻别 2020-12-06 04:04

I am having following lines of code.

sysLoader = (URLClassLoader)Thread.currentThread().getContextClassLoader();
url = sysLoader.getResource(\"tempFile.txt\"         


        
3条回答
  •  没有蜡笔的小新
    2020-12-06 04:27

    This is known by Sun/Oracle, their advice is to use URI objects which will remove the %20 characters:

    Instead of doing this:

    FileInputStream fis = new FileInputStream(url.getFile());
    

    you can force any %-escaped characters to be decoded by first converting the URL to a URI, and then use the path component of the URI as the filename:

    URI uri = new URI(url.toString());
    FileInputStream fis = new FileInputStream(uri.getPath());
    

提交回复
热议问题