在解析XML文件中随机会弹出这个红色提示.DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(fName);
filename=fName;
doc.normalize();
NodeList links=doc.getElementsByTagName(mytitle);
Element link=(Element) links.item(0);
link.getFirstChild().setNodeValue(mycontent);
document=doc;TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
DOMSource source = new DOMSource(document);
transformer.setOutputProperty(OutputKeys.ENCODING, "GB2312");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
StreamResult result = new StreamResult(new File(filename));
transformer.transform(source, result);
用这个方法取XML文件有问题吗?试过手动建XML,自动建XML,结果程序自动建XML的时候必然出这个提示,手动建了以后读XML,10次有那么1-2次出错,其他时候不报错,谁遇到过这个问题,怎么解决!

解决方案 »

  1.   

    刚才说错了,是每次在往XML中更新数据的时候可能出这个提示,几率大概20%,每次大概出1-4条,
    很奇怪
      

  2.   

    这应该是XML的格式没符合规范,程序新建时编码的不统一会导致这样.LZ可以试试全英文,如果不出现这样的情况可认定为编码问题=>如果还是就要考虑生成的XML为社么不对了
      

  3.   

    XML没错,好象是多线程的读写互斥问题,每个操作的方法都加上一个Synchronized (static lock)之后读写没问题,不过每次新建还是会跳一条这个信息,不知道为什么.