2016-08-13 5 views
-1

Учитывая txt-файл с текстом не-Unicode, я могу определить его кодировку как . Теперь я хотел бы конвертировать в unicode.Преобразование Unicode в unicode txt-файла

byte[] bytes1251 = Encoding.GetEncoding(1251).GetBytes(File.ReadAllText("sampleNU.txt")); 
String str = Encoding.UTF8.GetString(bytes1251); 

Это не работает.

Разве это способ сделать это для un-unicode для преобразования в Юникод?

После попытки предлагаемого подхода к файлу RTF, я получаю диалоговое окно ниже, когда пытаюсь открыть выходной файл RTF. Пожалуйста, дайте мне знать, что делать, потому что выбор Unicode не делает его доступным для чтения или дает ожидаемый текст?

enter image description here

ответ

2
// load as charset 1251 
string text = File.ReadAllText("sampleNU.txt", Encoding.GetEncoding(1251)); 

// save as Unicode 
File.WriteAllText("sampleU.txt", text, Encoding.Unicode); 
+0

Спасибо за быстрый ответ! Когда я пытаюсь выполнить код с RTF-файлом, я получаю прикрепленный диалог. Есть ли что-нибудь еще, что мне нужно сделать? – John

+1

@Holly - rtf ([формат форматированного текста] (https://en.wikipedia.org/wiki/Rich_Text_Format)) не является txt (обычный текст). Что вы действительно хотите сделать? –

+0

@Holly: Вы также должны сказать, что создает этот диалог - мы не знаем, какое приложение пытается открыть файл. –