我有一个包含许多记录的文本文件。每条记录都是一个xml元素。每条记录由文本分隔 - RECORD_BREAK。
实施例
<customer><name>John</name><phone>123-345-1123</phone></customer>
RECORD_BREAK
<customer><name>John</name><phone>123-345-1123</phone></customer>
RECORD_BREAK
<customer><name>John</name><phone>123-345-1123</phone></customer>
RECORD_BREAK
<customer><name>John</name><phone>123-345-1123</phone></customer>
RECORD_BREAK
在阅读记录时,我将每条记录拆分为
String [] strings = xml.split(“RECORD_BREAK”);
现在我需要为文件添加页眉和页脚。这是为了识别文件未损坏。如何读取文件的页眉和页脚。页眉和页脚就像
一样简单<CustomerInfo>
<customer><name>John</name><phone>123-345-1123</phone></customer>
RECORD_BREAK
<customer><name>John</name><phone>123-345-1123</phone></customer>
RECORD_BREAK
</CustomerInfo>
如何在分割记录之前检查记录开始和结束时的标记。
答案 0 :(得分:2)
理想情况下,您不会在文件中包含RECORD_BREAK标记,因为您不需要它们:您已经有按标记分隔的记录。只需使用XML解析器解析整个问题(在将其包装到顶级CustomerInfo标记后特别容易)。
这也为您提供了至少与页眉和页脚相同的非常适度的“损坏检查”级别,如果某个客户恰好被命名为“Little Bobby Tables RECORD_BREAK”,则不会失败。
您仍然可以使用XML解析器解析文件(使用RECORD_BREAK)。如果页眉与页脚不匹配,则它将不是有效的XML,解析器将告诉您(它还会告诉您有关格式错误的客户标记内容)。结果将是一个很好的Customer节点和文本节点序列(记录中断)。