我正在尝试获取 src/main/resources 中 SQL 文件的资源。
我已经成功地得到了我的文件:
String sqlFileName = "query.sql";
URL url = MyClass.class.getClassLoader().getResource(sqlFileName);
但如果像这样在 sqlFileName 中有单引号则不行
String sqlFileName = "John's query.sql";
URL url = MyClass.class.getClassLoader().getResource(sqlFileName);
getResource 返回 null,因为当有撇号时它找不到我的资源。我尝试了几种方法来转义我的单引号,例如\' 和 '',但都没有用。
我希望通过 getResource 获得类似于此的 url:
C:\Projects\ProjectA\src\main\resources\queries\John's query.sql
最佳答案
你试过用\\' 转义它吗?
使用一个\',您可以为字符串创建一个转义的 ',但不会传递给 URL 解析器。您想要转义\本身,以便 ' 和\都传递给解析器。
关于java - ClassLoader 的 getResource() 在路径中有单引号时返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33546805/