Delphi 2010 Широкие функции по сравнению со Строковыми функциями

Мы в настоящее время преобразовываем проект Delphi 2007 года в Delphi 2010. Мы уже использовали Unicode (через WideStrings и Средства управления Unicode TNT).

Я ожидал заменять все Широкие функции, например, WideUpperCase, с их эквивалентом, например, UpperCase, но они не работают тот же путь. Например, WideUpperCase работает по-другому по сравнению с UpperCase. WideUpperCase правильно верхние регистры Campañas, но UpperCase оставляет ñ в нижнем регистре.

Есть ли какие-либо другие различия, о которых я должен знать? например, WideFormat и Формат работают то же?

Спасибо

8
задан RRUZ 25 April 2011 в 02:24
поделиться

2 ответа

Вы должны использовать функцию ToUpper для преобразования единиц символов в строки Unicode в верхнем регистре. Или вы можете использовать AnsiUpperCase, если вам нужно поддерживать общую кодовую базу для версий Delphi, отличных от unicode и unicode - AnsiUpperCase - это функция Ansi для Delphi 2007 и более ранних версий и функция unicode для Delphi 2009 и более поздних версий.

9
ответ дан 5 December 2019 в 17:35
поделиться

Именование действительно плохое (из-за сохраняя совместимость со старыми версиями). Я предлагаю вам прочитать cos для каждой строковой функции, которую вы, возможно, захотите использовать, и проверить, работает ли она с Unicode или нет.

1
ответ дан 5 December 2019 в 17:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: