gpt4 book ai didi

Java:需要帮助优化部分代码

转载 作者:行者123 更新时间:2023-11-29 03:56:56 26 4
gpt4 key购买 nike

我有一个简单的转换XML的代码,但是非常耗时(我不得不重复很多次)。有没有人建议如何优化此代码?谢谢。

编辑:这是代码的新版本。不幸的是,我不能重用 Transformer,因为 XSLTRule 在大多数情况不同。我现在正在重用 TransformerFactory。在此之前我没有从文件中读取,所以我不能使用 StreamSource。大部分时间花费在 Transformer 的初始化上。

private static TransformerFactory tFactory = TransformerFactory.newInstance();

public static String transform(String XML, String XSLTRule) throws TransformerException {

Source xmlInput = new StreamSource(new StringReader(XML));
Source xslInput = new StreamSource(new StringReader(XSLTRule));

Transformer transformer = tFactory.newTransformer(xslInput);

StringWriter resultWriter = new StringWriter();
Result result = new StreamResult(resultWriter);
transformer.transform(xmlInput, result);
return resultWriter.toString();
}

最佳答案

您应该做的第一件事是跳过不必要的 XML 字符串到字节的转换(尤其是硬编码的、可能不正确的编码)。您可以使用 StringReader 并将其传递给 StreamSource 构造函数。结果相同:使用 StringWriter 并避免转换。

当然,如果您首先在将 XML 从文件(字节)转换为 String 之后调用该方法(再次使用可能错误的编码),则更好直接从文件中读取 StreamSource

关于Java:需要帮助优化部分代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5857971/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com