簡體   English   中英

將文本文件標簽解析為xml-Java

[英]Parse text file tags as xml - Java

我有一個日志文本文件,由幾個標簽組成,如下所示:

<log level="info" id="12144" ....> <msg> test msg </msg> </log>

我想解析此文件,因此我認為,由於它看起來像XML,因此可以將xml( <?xml version="1.0"? >)和根( <file> )標記添加到文件中,然后使用DOM解析器。

但是目前,我面臨一個在文件開頭添加文本的問題,因為所有可用的選項都將被覆蓋,或者將原始文件復制到一個臨時位置,然后添加想要的文本,這不適用於我我正在處理大於100 MB的文件。

I use the below code to try to add the text at the beginning, and I tried several solutions or classes other than RandomAccessFile

RandomAccessFile RAF = new RandomAccessFile(file, "rw");
        RAF.getChannel().position(0);

        RAF.write(("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n <file> \r\n").getBytes()); 

        RAF.close();

您是否有任何建議在開頭添加文本或按原樣解析文本文件並提取元素?

謝謝,

如果您知道條目的精確模式, 如果該模式不會再更改它的相對容易提取使用正則表達式,如條目:

"<log *level=\"([^\"]*)\" *id=\"([^\"])\" *> ..."

您能否僅以StringStream或其他形式獲取文件內容,然后將內容添加到開頭? 之后,您仍然可以解析文檔String/Stream

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM