嗨,
我在逐行读取文件时遇到逻辑问题。我知道你可以用 来做到这一点BufferedReader
,但有时我有写在更多行中的“值”,这很重要。
我正在阅读的文件示例:
<#FIELD NAME = DESC> Some text that goes
over multiple lines
which is needed</#FIELD>
<#FIELD NAME = TEMP> some values are just a single line</#FIELD>
我需要解析字段名称,如上面的 TEMP 或 DESC,然后提取这些括号之间的值<#FIELD NAME =DESC>important values </#FIELD>
。但是我不确定如何“识别”一个条目具有多行值或单值行,然后在使用 BufferedReader 时将其保存到变量中。
我真的很感激任何提示或例子来引导我走向正确的方向!
因为逐行阅读它并没有帮助我取得进步......我不会发布整个代码,因为我认为有一种更简单的阅读方式,你会了解我到目前为止所做的事情小片段。
if (line.contains("<#FIELD NAME = AUTOR>"))
{
String autor = line.substring(line.indexOf(">") + 1, line.indexOf("</#"));
metaData.setAutor(autor.trim());
}
else if (line.contains("<#FIELD NAME = DOKUMENTNR>"))
{
String dokumentnr = line.substring(line.indexOf(">") + 1, line.indexOf("</#"));
metaData.setDoukumentnr(dokumentnr.trim());
...