java - JsonParser 中的 toXML 在哪里,为什么该方法不可用?

标签 java json xml gradle basex

如何调用following方法JsonParser:

  /**
   * Converts a JSON document to XML.
   * @param io input
   * @param options parser options
   * @return parser
   * @throws IOException I/O exception
   */
  private static IOContent toXML(final IO io, final JsonParserOptions options) throws IOException {
    final JsonConverter conv = JsonConverter.get(options);
    final IOContent xml = new IOContent(conv.convert(io).serialize().finish());
    xml.name(io.name());
    return xml;
  }

但我肯定没有从 IDE 中看到这个方法:

screenshot

method is in Java 文档:

Method Detail

    toXML

    public static IOContent toXML(IO io,
                  JsonParserOptions options)
                           throws java.io.IOException

    Converts a JSON document to XML.

    Parameters:
        io - input
        options - parser options
    Returns:
        parser
    Throws:
        java.io.IOException - I/O exception

构建文件正在使用:

编译组:'org.basex',名称:'basex',版本:'9.2.4'

这是我在存储库中看到的最新版本:

maven { url "https://mvnrepository.com/" }

我甚至组装了该项目,并从生成的 BaseX 中的 JAR 中提取了 .class 文件,但没有进一步看看有没有这个方法。

也许我只是不 invoking方法正确吗?

最佳答案

哎呀:

package basex;

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.logging.Logger;
import org.basex.build.json.JsonParser;
import org.basex.build.xml.SAXWrapper;
import org.basex.core.MainOptions;
import org.basex.io.IOFile;

public class JsonToXmlTransformer {

    private static final Logger log = Logger.getLogger(JsonToXmlTransformer.class.getName());

    public JsonToXmlTransformer() {
    }

    private void baseXparseJsonFile(String fileName) throws IOException {
        org.basex.build.json.JsonParser jsonParser = new org.basex.build.json.JsonParser(new IOFile(fileName), new MainOptions());

        SAXWrapper foo = org.basex.build.json.JsonParser.xmlParser(new IOFile(fileName));
        foo.parse();
        String bar = foo.toString();
        log.info(bar);
    }

    public void transform(String fileName) throws IOException {
        String content = new String(Files.readAllBytes(Paths.get(fileName)), StandardCharsets.UTF_8);
        org.json.JSONObject json = new org.json.JSONObject(content);
        log.info(org.json.XML.toString(json));
    }
}

有错误的包裹...

关于java - JsonParser 中的 toXML 在哪里,为什么该方法不可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60023464/

相关文章:

ios - 在 Swift 中使用 Alamofire 解析 JSON 响应

JSON 与 HTML Ajax 响应

xml - XSLT:一旦找到我也想要的东西,就摆脱 for-each

java - Spring+Hibernate应用程序的环境特定配置

java - 为什么 String.strip() 比 String.trim() 在 Java 11 中的空白字符串快 5 倍

java - Spring Boot 测试未从 src/main/resources 获取 hbm.xml 文件

java - 在 Java/Android 中测试空 JSON 对象

json - 使用自定义攻击者在 Vegeta 的 POST 请求中发送有效载荷

xml - XSD 签名问题

java - 循环中的 CompletableFuture : How to collect all responses and handle errors