मैं MultiByteToWideChar() WinAPI फ़ंक्शन के साथ बाइट्स की स्ट्रीम को कन्वर्ट करने का प्रयास कर रहा हूं।बाइट्स की स्ट्रीम को दूसरे एन्कोडिंग में कैसे परिवर्तित करें?
प्रलेखन का कहना है कि कार्य अपूर्ण तारों पर ERROR_NO_UNICODE_TRANSLATION के साथ विफल रहता है (मल्टीबाइट एन्कोडेड स्ट्रिंग में कोई पिछला बाइट नहीं)। मैं इस त्रुटि को कैसे रोकूं? दिमाग में आने का एकमात्र तरीका इनपुट बफर के अंतिम मल्टीबाइट चरित्र को परिवर्तित करना नहीं है (इसे खोजने के लिए IsDBCSLeadByteEx() का उपयोग करके)।
क्या बाइट्स की धारा को परिवर्तित करने के लिए बेहतर समाधान हैं?
आप कौन से कोड पेज का उपयोग करते हैं? आप किस रूप में डेटा प्राप्त करते हैं? मैं शुरुआत से अंत तक उम्मीद करता हूं और इसके विपरीत नहीं। – Oleg
कोड को विंडोज प्लेटफ़ॉर्म द्वारा समर्थित सभी कोडपृष्ठों के साथ काम करना चाहिए। मुझे मल्टीबाइट या सिंगलबाइट एन्कोडिंग में डेटा प्राप्त होता है और इसे आंतरिक रूप से व्यापक रूप से संसाधित करना चाहता है, इसे आउटपुट (प्रसंस्करण के बाद) पर लोकेल-विशिष्ट एन्कोडिंग में परिवर्तित करना। – Basilevs