سؤال

نقوم حاليًا بتحويل مشروع Delphi 2007 إلى Delphi 2010. كنا نستخدم Unicode بالفعل (عبر Widestrings و TNT Unicode Controls).

كنت أتوقع استبدال جميع الوظائف الواسعة ، على سبيل المثال ، على عريض ، مع ما يعادلها ، على سبيل المثال ، لكنها لا تعمل بنفس الطريقة. على سبيل المثال ، يعمل Wideuppercase بشكل مختلف عن الأحرف الكبيرة. Wideuppercase بشكل صحيح العلويات campañas ، ولكن الأحرف الكبيرة تترك in في الحالة السفلية.

هل هناك أي اختلافات أخرى يجب أن أكون على دراية بها؟ على سبيل المثال ، تعمل الواسعة والتنسيق على نفس المنوال؟

شكرًا

هل كانت مفيدة؟

المحلول

يجب عليك استخدام وظيفة Toupper من وحدة الأحرف إلى سلاسل Unicode الكبيرة. وإلا يمكنك استخدام AnsiupperCase إذا كنت بحاجة إلى دعم قاعدة الكود المشتركة لإصدارات غير unicode و Unicode Delphi - ANSIupperCase هي وظيفة ANSI لـ Delphi 2007 و Prior ، و Unicode for Delphi 2009 وما فوق.

نصائح أخرى

التسمية سيئة حقًا (بسبب الحفاظ على الإصدارات القديمة). أقترح عليك قراءة COS لكل وظيفة سلسلة قد ترغب في استخدامها والتحقق مما إذا كانت تعمل مع Unicode أم لا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top