我找到了我的跑步类的类路径:
MyClass.class.getProtectionDomain().getCodeSource().getLocation().getPath();
我得到以下路径作为我的结果:
Usersvanburenmain_devvob2SDWebContentWEB-INFclasses
我必须读取XML文件的位置:
Usersvanburenmain_devvob2SDrulesXMLrules.XML
谁能告诉我怎么把三个文件夹往上移动?我试过使用
getAbsoluteFile().getParentFile()
但那似乎是多余的。有更好的方法吗?
我不知道为什么你有getAbsoluteFile()
,但getParentFile()
是迄今为止最简单和最接受的导航文件夹树的方法。
由于我没有找到比使用getParentFile()
更好的方法来遍历文件夹,我已经将我想要读取的文件添加到我的类路径并通过
URL url = Thread.currentThread().getContextClassLoader().getResource(RULES_XML_NAME);
File fXmlFile = new File(url.getPath());
并使用File fXmlFile = new File(url.getPath());