提问人:Matheus Markies 提问时间:11/16/2023 最后编辑:jewelseaMatheus Markies 更新时间:11/16/2023 访问量:80
JavaFX 标签中的奇怪字符
Weird characters in JavaFX Labels
问:
下午好。 我在使用 JavaFX 时遇到了一些问题,基本上我通过代码创建了我的标签(我使用的是 IntelliJ IDE):
来自 Card 对象(包含 Label 的对象)的调用:
vibrationCard = new Card("METRICA", "Eixos de vibração", "");
fftCard = new Card("METRICA", "FFT", "");
对象卡(包含标签的对象)
public Card(String topLabel, String title, String bottomLabel){
cardTitleLabel = new Label(title);
cardTitleLabel.setFont(new Font(14.0));
//Code remainder
cardStruct.getChildren().addAll(
cardTopLabel,
cardTitleHeaderHBox,
separator,
contentAnchorPane,
cardBottomLabel
);
getChildren().addAll(cardStruct);
}
问题是,我的标签有奇怪的字符,它们应该是重音字母:
我已经将 IDE 设置为 UTF-8,并且还尝试转换字符串的格式以查看是否可以修复它,但它不起作用。
答:
6赞
David Weber
11/16/2023
#1
溶液:
您必须确保
- 编辑器中的 Java 源文件使用 UTF-8 保存
- 编译器使用 UTF-8 读取它们
如果您使用 Maven,请将其添加到您的 pom.xml 中:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
如果您使用 Gradle,请将其添加到 build.gradle 中:
tasks.withType(JavaCompile) {options.encoding = 'UTF-8'}
附加说明:
有时,从 UTF-8 转换和转换 UTF-8 很棘手。作为最后的手段,删除文件,使用复制粘贴重写其内容,然后使用键盘而不是复制粘贴手动重写字符串,因为他们自己的字符可能采用错误的格式。这也可以通过将 Internet 或第三方文档中的字符复制粘贴到 String 中来实现。
评论
cardTitleLabel = new Label(title)
说什么?new Label("Eixos de vibração")
-encoding utf-8