Java XML中的错误字符?

Java XML中的错误字符?,java,xml,encoding,jaxb,Java,Xml,Encoding,Jaxb,我有以下问题: 对于一个项目,我创建了自己的logger,它生成一个带有自定义标记的xml文件。 问题在于,使用DOM和JAXB创建XML可能在编码方面存在问题。因为“内容”字段总是产生不正确的字符。 我已经尝试使用UTF-8/windows-1252更改编码。 我发现,实际上,我运行记录器的项目使用的是ISO-8859-1,我也尝试过替换它,但什么都没有。作为内容字段的输出,我总是得到这些不可理解的字符。 有人能帮我吗 我的代码: if (OS.contains("Window

我有以下问题: 对于一个项目,我创建了自己的logger,它生成一个带有自定义标记的xml文件。 问题在于,使用DOM和JAXB创建XML可能在编码方面存在问题。因为“内容”字段总是产生不正确的字符。 我已经尝试使用UTF-8/windows-1252更改编码。 我发现,实际上,我运行记录器的项目使用的是ISO-8859-1,我也尝试过替换它,但什么都没有。作为内容字段的输出,我总是得到这些不可理解的字符。 有人能帮我吗

我的代码:

        if (OS.contains("Window")) {

            try {

                fh = new FileHandler(userDir+s+logF+s+jade+s+nameAgent+"-receive(Logger Java).xml" );
                logger.addHandler(fh);
                XMLFormatter formatter = new XMLFormatter();  
                fh.setFormatter(formatter);  
                logger.info(" ");

            }

            catch (SecurityException e) {  
                e.printStackTrace();  
            } catch (IOException e) {  
                e.printStackTrace();  
            }
        }


        XmlCreator xmlcreator = new XmlCreator();
        xmlcreator.setOntology(onto);
        xmlcreator.setPerformative(perf);
        xmlcreator.settimeStamp(ts);
        xmlcreator.setProtocol(pro);
        xmlcreator.setReceiver(rec);
        xmlcreator.setContent(con);

        try {

            File file = new File("C:\\Users\\Francesco\\Desktop\\writereceiver.xml");
            JAXBContext jaxbContext = JAXBContext.newInstance(XmlCreator.class);
            Marshaller jaxbMarshaller = jaxbContext.createMarshaller();

            // output pretty printed
            jaxbMarshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8");
            jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);

            jaxbMarshaller.marshal(xmlcreator, file);
            jaxbMarshaller.marshal(xmlcreator, System.out);

        } catch (JAXBException e) {
            e.printStackTrace();
        }
输出XML(内容标记中存在问题):


sr pojo.SongRequestInfoÃÃÃcÃWCë
接受建议
jade.util.leap.ArrayList$1@445c4a59
1583849551513

我同意@VCR。输出XML很可能是一个正确编码的UTF-8XML文档,它看起来很奇怪,因为您使用的软件不知道如何显示UTF-8


开头的字符对的普遍存在表明,当您使用认为显示iso-8859-1的软件显示UTF-8数据时会发生什么。

con
中有什么?它是什么类型的?它是如何定义的?谁来填?请显示相关代码。看起来XML文件是正确的,您查看输出的方法没有识别出输出是UTF-8.con和所有其他字符串。我使用atom我必须做什么,才能看到它正确吗?我已经试过用UTF-8编码
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xmlCreator>
    <content>’ sr pojo.SongRequestInfoÃÃcÀWCë</content>
    <performative>ACCEPT-PROPOSAL</performative>
    <receiver>jade.util.leap.ArrayList$1@445c4a59</receiver>
    <timeStamp>1583849551513</timeStamp>
</xmlCreator>