我需要在XML文件中修改单个信息。 XML文件大约100行。要修改整个XML文件中的单个元素,JAVA中最有效的内存方式是什么?
JAXB更好?
简单的SAX解析器?
或其他任何方式.....建议...
最佳答案
SAX解析器提供了更多的解析控制能力,并且比DOM解析器更快。从减少代码编写的角度来看,JAXB将很容易。 XStream也是另一个选择,但与JAXB类似,后者是一个高级API,因此它有一些开销任务,因此它会比SAX慢一些。
我将不建议直接进行字符串操作(应用String.indexOf()和String.replace()),尽管这是更新XML中唯一标记的最快方法,但由于您的XML可能无效并且xml结构是XML,因此存在风险不简单,那么就有更新错误级别标签的风险:-)
因此,SAX解析器对我来说似乎是最好的选择。