【问题标题】:JAXB xjc tool and non-ascii charactersJAXB xjc 工具和非 ascii 字符
【发布时间】:2012-08-24 07:28:01
【问题描述】:

我有一个包含非 ascii 字符的 xsd 方案。

我想生成类,但强制 xjc 工具不要将这些字符转换为 unicode 格式 (\uXXXX),并保持原样。

问题在于,当它将 unicode 表示形式的枚举值放入生成类的 XmlEnumValue 注释时,JAXB 解组器无法映射适当的字段。当我手动将其转换为普通状态时,它可以正常工作。

有什么建议吗?

【问题讨论】:

    标签: jaxb xjc non-ascii-characters


    【解决方案1】:

    您可以使用此代码将文件中的字符转换回本机表示:

    import org.apache.commons.io.FileUtils;
    import org.apache.commons.lang.StringEscapeUtils;
    
    public void convertToNative(String filePath) throws IOException {
        File file = new File(filePath);
        FileWriter writer = new FileWriter(filePath + ".converted");
        try {
            String s = FileUtils.readFileToString(file, "utf-8");
            s = StringEscapeUtils.unescapeJava(s);
            writer.write(s);
        } finally {
            writer.close();
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-22
      • 1970-01-01
      相关资源
      最近更新 更多