DOM を使用して xml ファイルを変更しようとしたところ、次のことが起こりました。
javax.xml.transform.TransformerException: java.io.FileNotFoundException: file:\D:\myproject\build\web\xml\myFile.xml (The filename, directory name, or volume label syntax is incorrect)
at org.apache.xalan.transformer.TransformerIdentityImpl.createResultContentHandler(TransformerIdentityImpl.java:263)
at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:296)
at utils.UpdateUtils.BookUpdate(UpdateUtils.java:36)
これは私のコードです
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(f);
searchAndModify(doc); //modify xml's contents
Source source = new DOMSource(doc);
Result result = new StreamResult(f);
TransformerFactory tff = TransformerFactory.newInstance();
Transformer trans = tff.newTransformer();
trans.transform(source, result);
f は、生成された私の xml です。Document doc にうまく解析されました。ただし、変換すると例外がスローされました。
新しいxml、同じフォルダーに解析しようとしましたが、役に立ちませんでした:
Result result = new StreamResult(new File(path, "newFile.xml"));
javax.xml.transform.TransformerException: java.io.FileNotFoundException: file:\D:\myProject\build\web\newFile.xml (The filename, directory name, or volume label syntax is incorrect)
誰かがこの問題に遭遇したか、解決策を持っていますか? 私を助けてください!