我正在尝试创建一个文件实例来从属性值解析 html 记录。问题出在我必须放入文件属性的文件的 url 中,这是我的示例:读取文件对应代码:public void extraxtElementWithoutId() { Map<String,List<List<Element>>> uniciteIds = new HashMap<String,List<List<Element>>>(); FileReader fileReader = null; Document doc = null; try { fileReader = new FileReader(new ClassPathResource(FILEPROPERTYNAME).getFile()); Properties prop = new Properties(); prop.load(fileReader); Enumeration<?> enumeration = prop.propertyNames(); List<List<Element>> fiinalReturn = null; while (enumeration.hasMoreElements()) { String path = (String) enumeration.nextElement(); System.out.println("Fichier en question : " + prop.getProperty(path)); URL url = getClass().getResource(prop.getProperty(path)); System.out.println(url.getPath()); File inputFile = new File(url.getPath()); doc = Jsoup.parse(inputFile, "UTF-8"); //fiinalReturn = getListofElements(doc); //System.out.println(fiinalReturn); fiinalReturn = uniciteIds.put("Duplicat Id", getUnicityIds(doc)); System.out.println(fiinalReturn); } } catch (IOException e) { e.printStackTrace(); }finally { try{ fileReader.close(); }catch(Exception e) { e.printStackTrace(); } } }预先感谢您,最好的问候。
1 回答
皈依舞
TA贡献1851条经验 获得超3个赞
您对线路犯了一个非常常见的错误-
URL url = getClass().getResource(prop.getProperty(path));
尝试使用属性值作为(通过删除src) -/testHtmlFile/test.html
等等。不要更改代码。
UrlEnterer1=/testHtmlFile/test.html 而不是在它前面加上src。
prop.getProperty(path)
应该根据文件的构建路径位置。检查您的构建目录,了解这些文件的存储方式。这些不存储在 src 下,而是直接存储在 build 目录下。
这个答案解释了一些关于从类路径读取文件的路径值。
此外,作为旁注(与问题无关),尽量不要prop.getProperty(path)
使用org.springframework.beans.factory.annotation.Value
注释直接在类中注入属性值。
添加回答
举报
0/150
提交
取消