سؤال

وأنا تطوير تطبيقات جافا أن تصدر البيانات إلى ملفات CSV، المزمع افتتاحه في Excel من قبل المستخدمين النهائيين. لاحظنا فقط أن يستخدم الدالة تصدير ترميز منصة افتراضية جاوة. هذا يسبب أحرف تحتوي على علامات تشكيل لتفقد وحدة الاختبار إلى فشل على خادم البناء (الذي تم تكوينه ليكون US-ASCII كما ترميز منصة الافتراضية الخاصة به بالضبط للقبض على مثل هذه المشاكل المحتملة).

والسؤال هو: الذي من شأنه أن يكون أفضل الترميز للاستخدام؟ كيف تحدد إكسل ما الترميز للاستخدام؟ هل استخدام شيء منصة المحددة التي يفترض مباريات الافتراضية منصة جافا؟

وأنا يميل حاليا نحو Cp1252 hardcoding - التي يجب أن تغطي الأجهزة المستهدفة (يتم تحديد بيئة نشر في الواقع)، وسوف يحل المشكلة الاختبار. من غوغلينغ حولها، Excel لا يبدو أن التعامل مع UTF-8 بشكل جيد، بحيث يكون خارجا، وأن التمسك ترميز منصة الافتراضية تتطلب نوعا من الإختراق الحل البديل للاختبارات.

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

المحلول

وأتوقع اكسل للعمل بشكل جيد مع الترميز الافتراضي منصة، لذلك العالقة مع ذلك يبدو أن الخيار الأفضل لبرنامج Excel في الحالة العامة. سوف التحقق إذا الافتراضي المنصة US-ASCII واستخدام Cp1252 بدلا من ذلك (أعتقد أن الإختراق للاختبارات) يكون ما يعادل المفاهيمي لقمع تحذير المترجم. أنت تعرف أنها لا تنطبق في هذه الحالة.

ولكن، منذ أن تكتب أن يمكنك التحكم في نشر الإنتاج، لماذا تتردد في Cp1252 كود الصعبة؟ يبدو وكأنه حل معقول تماما إذا كان هذا هو ترميز الهدف من التطبيق.

نصائح أخرى

ويمكنك الحصول على لغة النظام (من خصائص النظام) وإنشاء ملف الإخراج مع هذا التشفير. إذا كان سيتم فتح الملفات فقط في التفوق قد يكون ما تحتاجه نلقي نظرة على أباتشي POI؟

وفكر اكسل يعمل بشكل جيد مع UTF-16. ما هو الخطأ في تصدير في UTF-16. على الأقل سيتم الحفاظ على أن الأحرف بطريقة غير أسكي، بدلا من مجرد التخلص منها.

وتحرير، طيب، 'جيدا' قد تبالغ كيف تتفوق يعمل مع UTF-16، لكنه لا يزال يبدو أن UTF-16LE يعمل بشكل أفضل من UTF-8

وUTF-8 يجب أن تعمل بشكل جيد الآن. I كشط المنتجات ثم حفظها كما CSV، واستخدام الفسفور الابيض جميع استيراد ثم تحميل هذه CSV، كل هذا يحول إلى XML ثم كل تحميلها كما المشاركات WP. عظيم! نلقي نظرة على مربى tangan كاسيو

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