【问题标题】:How to save an xml file to local desktop in Java如何在 Java 中将 xml 文件保存到本地桌面
【发布时间】:2011-04-16 02:14:00
【问题描述】:

我创建了一个 xml 文件,我想将它保存到我的桌面,但我不知道如何做那种事情。

到目前为止,这是我的代码:

// create xml
        DocumentBuilderFactory factory =
            DocumentBuilderFactory.newInstance();
        DocumentBuilder builder = factory.newDocumentBuilder();

        Document testDoc = builder.newDocument();

        Element bo = testDoc.createElement("bo");
        bo.setAttribute("type", "Employee");
        bo.setAttribute("id", emp.getId());
        testDoc.appendChild(bo);

        Element username = testDoc.createElement("username");
        username.setTextContent(emp.getUsername());
        bo.appendChild(username);

        Element passHash = testDoc.createElement("passwordHash");
        passHash.setTextContent(emp.getPasswordHash());
        bo.appendChild(passHash);

        Element passwordSalt = testDoc.createElement("passwordSalt");
        passwordSalt.setTextContent(emp.getPasswordSalt());
        bo.appendChild(passwordSalt);

        Element name = testDoc.createElement("name");
        name.setTextContent(emp.getName());
        bo.appendChild(name);

        Element lastLogin = testDoc.createElement("lastLogin");


        DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println("date = " + emp.getLastLogin());
        String date = df.format(emp.getLastLogin());
        lastLogin.setTextContent(date);
        bo.appendChild(lastLogin);

        DOMSource source = new DOMSource(testDoc);

        PrintStream ps = new PrintStream(emp.getId() + ".xml");
        StreamResult result = new StreamResult(ps);

        TransformerFactory transformerFactory = TransformerFactory
            .newInstance();
        Transformer transformer = transformerFactory.newTransformer();

        transformer.transform(source, result);

谢谢,

【问题讨论】:

    标签: java xml


    【解决方案1】:

    看起来您已经想办法构建 XML 并将其写入文件,并且真的在询问如何在用户桌面上创建文件。

    如果是这样,请阅读In java under Windows, how do I find a redirected Desktop folder?的接受答案

    顺便说一句,该解决方案不是特定于 Windows 的。

    【讨论】:

    • 我知道这看起来很奇怪,但我真的很生气,真的超出了我的编程舒适区。谢谢!
    • +1,用于解释问题(并给出解决方案)。所有的 XML 代码都让我大吃一惊。我想知道为什么答案还没有被接受?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多