Мой файл FXML отформатирован в UTF-8.Это соответствующая часть кода:
<?xml version="1.0" encoding="UTF-8"?>
<Text fx:id="totalSqMGlassText" layoutX="573.0" layoutY="547.0" strokeType="OUTSIDE" strokeWidth="0.0" text="�xB2;" AnchorPane.bottomAnchor="57.0" AnchorPane.leftAnchor="573.0" />
Я проверил код UTF-8 для второй мощности здесь и здесь .Нашел эту информацию о Unicode-символе «верхний индекс два», то есть второй степени: «UTF-8 (hex) - 0xC2 0xB2 (c2b2)».Я также читаю этот вопрос и отвечаю на stackOverflow .Итак, я попытался с этим: �xC2;
e�xB2;
슲
&#c2b2;
и даже это :) &#c2 b2;
Если я использую стандартный текст, все работает хорошо, но если я пытаюсь с вышеупомянутым специальным символом исбегая я получаю это исключение:
javafx.fxml.LoadException:
... Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[142,121]
Message: The character reference must end with the ';' delimiter.
или это
Caused by: javax.xml.stream.XMLStreamException: ParseError at
[row,col]:[142,118]
Message: A decimal representation must immediately follow the "&#" in a character reference.
Каждый раз я использовал точку с запятой (однажды попробовал даже без точки с запятой и с двумя точками с запятой :)).Я думаю, что второе исключение очевидно.В своем отчаянии я просто несколько раз пытался ввести правое бегство вслепую, поэтому я использовал экранирование для десятичного представления вместо шестнадцатеричного (поправьте меня, если я ошибаюсь).Итак, мой вопрос:
Знаете ли вы, что я делаю неправильно и как правильно экранировать и кодировать в этой ситуации?А также, как правильно представлять силы и показатели в FXML / XML в целом?Заранее спасибо.