【发布时间】:2012-08-30 13:37:30
【问题描述】:
我需要解析存储在 blobstore 中的 XML 文件。我该怎么做?
这是我到目前为止所做的:
FileService fileService = FileServiceFactory.getFileService();
AppEngineFile file = fileService.getBlobFile(new BlobKey(key));
我无法使用 javax.xml 包解析 XML 文件,或者可以吗?如果将该包中的类付诸实施,则需要引用 java.io.File 对象。但我没有那个。
这是我到目前为止一直在做的事情:(不是在服务器上,而是在本地)
File blobKeys = new File("/home/non-admin/NetBeansProjects/Personal Site_Testers/web/xml/xml_1.xml");
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(blobKeys);
Element root = doc.getDocumentElement();
Element firstName = doc.createElement("first-name");
firstName.setTextContent(name);
root.appendChild(firstName);
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("/home/non-admin/NetBeansProjects/Personal Site_Testers/web/xml/xml_1.xml"));
transformer.transform(source, result);
注意:有 3 个 xml 文件上传到 blobstore。那些 xml 文件只有一个根标签。我想获取 xml 引用并解析它们以根据请求多次附加子节点。
【问题讨论】:
-
也许这可以帮助你:code.google.com/p/gaevfs
-
@WimDeblauwe 那对我有什么帮助?
-
这只是我发现在获取实际 File 对象时可能有用的东西。但我认为@zsxwing 的建议要好得多。你应该像他说的那样使用 FileService。
标签: java google-app-engine xml-parsing blobstore