سؤال

كيف يمكنني تعديل رمز vb.net التالي للكتابة str إلى الملف في Unicode؟

هل أحتاج إلى التحويل str ل يونيكود قبل الكتابة إلى الملف؟

Using sw As StreamWriter = New StreamWriter(fname)
    sw.Write(str)
    sw.Close()
End Using
هل كانت مفيدة؟

المحلول

استخدم ال Overriden مُنشئ لتحديد الترميز

Using sw As StreamWriter = New StreamWriter(fname, true, System.Text.Encoding.Unicode)
    sw.Write(str)
    sw.Close()
End Using

اختر إما UTF8 (8bit) أو Unicode (16 بت) ترميز الأحرف وفقًا لمتطلباتك.

نصائح أخرى

الوثائق تقول ذلك StreamWriter يستخدم UTF8 ترميز افتراضيًا.

يرشد الرمز أدناه صراحةً إلى حفظ UTF-8 بدون BOM.

Dim utf8WithoutBom As New System.Text.UTF8Encoding(False)
Dim orfWriter As System.IO.StreamWriter = New System.IO.StreamWriter(fileName, append, utf8WithoutBom)
orfWriter.Write(saveString)
orfWriter.Close()

للحصول على الوثائق الكاملة ، انظر www.ezvb.net.

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