发送关于某个主题的 xml 消息后,瑞典字符未正确显示 (Java-8)

Swedish Characters Not showing properly after sending xml message on a topic (Java-8)

有一个标签,我必须在其中设置字符串 "Vänligen Klicka på länken"。 但它显示了不同的字符来代替所有 'ä' 和 'å'。除了这个 XML 标签输出不同之外,其他一切正常。

    String linkMsg = "Vänligen Klicka på länken";
    byte[] bytes = linkMsg .getBytes(StandardCharsets.UTF_8);
    String newString = new String(bytes,"UTF-8");
    LinkField linkField = new LinkField();
    linkField.setStringValue(newString);

我得到的输出是 "Vänligen Klicka pÃ¥ länken"。

Maven pom 的一部分,

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <start-class>se.link.Application</start-class>
    <java.version>1.8</java.version>
</properties>

我正在使用 Spring 启动。

linkMsg.getBytes() 为您提供以平台默认字符集编码的字符串 - 这可能不是 UTF-8。然后您将其视为 UTF-8。

使用 linkMsg.getBytes(StandardCharsets.UTF_8) 获取以 UTF-8 编码的字符串字节。