У меня странная ситуация, когда я не понял, как обращаться. У нас есть разработчики, работающие на нескольких платформах, основная платформа - Linux, но у нас также есть люди, работающие над OS X и Windows.Java: проблема с кодировкой многоплатформенной строки
У нас есть набор тестов, которые все строят и работают отлично на Linux. Но когда мы пытаемся запустить их на OS X, они терпят неудачу. Неудачное утверждение - это проверка того, что две строки равны, но есть один символ, который не похож на тот же символ в среде Mac. Я вполне уверен, что это просто потому, что файл закодирован определенным образом, а ожидаемое строковое значение, которое является жестко закодированным, кодируется по-разному. Я смог исправить некоторые другие проблемы с кодировкой, установив JVM file.encoding через MAVEN-OPTS, но до этого момента я был в тупике от этой проблемы.
Структура выглядит примерно так: some.xml -> XSLT -> объект assertEquals ("ожидаемое значение", object.valueToTest());
Любая информация о том, как исправить это несоответствие? Или даже почему это происходит в первую очередь?
Заголовок в файле xml говорит, что он закодирован в UTF-8, но возможно, что файл может быть закодирован по-разному в файловой системе. Есть ли способ проверить, что такое фактическая кодировка?