Delphi 2010 Широкие функции vs. Строковые функции
-
01-10-2019 - |
Вопрос
В настоящее время мы преобразовываем проект Delphi 2007 в Delphi 2010. Мы уже использовали Unicode (через SIDESTRINGS и TNT Unicode Controls).
Я ожидал заменить все широкие функции, например, Wideupper, с их эквивалентом, например, в верхнем регистре, но они не работают так же. Например, Wideuppercase работает по-разному из прописных букв. Wideuppercase правильно апперкерует Campañas, но заглавные оставляет в нижнем регистре.
Есть ли другие различия, о которых я должен знать? Например, WideFormat и Format работать так же?
Спасибо
Решение
Вы должны использовать функцию Tourpster от блока символов в прописные строки Unicode. Или вы можете использовать AnsiupperCas, если вам необходимо поддержать общую кодовую базу для неиковых и Unicode Delphi Versions - AnsiupperCas - это функция ANSI для Delphi 2007 и PROCE и функции Unicode для Delphi 2009 и выше.
Другие советы
Наимние действительно плохое (из-за сохранения составления с более старыми версиями). Я предлагаю вам прочитать COS для каждой строковой функции, которую вы можете использовать и проверять, работает ли она с Unicode или нет.