【发布时间】:2012-12-15 17:24:35
【问题描述】:
我正在尝试获取存储在 /com/package/ 中的名为“policy.local”的文件的路径
我想从名为“com.package.class”的类中指定上述文件的路径。 (所以这个类和文件在同一个文件夹中)...如何在类com.package.class的java代码中指定policy.local文件的路径?
【问题讨论】:
我正在尝试获取存储在 /com/package/ 中的名为“policy.local”的文件的路径
我想从名为“com.package.class”的类中指定上述文件的路径。 (所以这个类和文件在同一个文件夹中)...如何在类com.package.class的java代码中指定policy.local文件的路径?
【问题讨论】:
一个简单的方法:如果这个包不包含任何类,则在包“/com/package/”中创建一个空类(没有方法和字段),或者使用它们中的任何一个,如果它们存在的话。 然后进行下一步:
ClassName.class.getResource("policy.local").toString()
这将为您提供文件的绝对路径形式,如下所示:
file:/C:/sandbox/xxx/com/package/policy.local
【讨论】:
由于您的课程和文件(资源)在同一个包中,您可以通过以下方式获取:
getClass().getResource("policy.local")
如果类和资源不在同一个包中,你会想要使用:
getClass().getClassLoader().getResource("com/package/policy.local");
【讨论】: