У меня есть текст, прочитанный из файла XML, хранящегося в кодировке UTF8. C # читает это отлично, я проверил с помощью отладчика, но когда я пытаюсь преобразовать его в ASCII, чтобы сохранить его в другом файле, я получаю? char в местах, где был противоречивый характер. Например, этот текст:
string s = "La introducción masiva de las nuevas tecnologías de la información";
Будет сохранено как
"La introducci?n masiva de las nuevas tecnolog?as de la informaci?n"
Я не могу просто заменить их на их латинские (a, e, i, o, u) гласные, потому что некоторые слова на испанском языке будут пропускать смысл. Я уже попробовал это и это вопросов без успеха. Поэтому я надеюсь, что кто-нибудь может мне помочь. Выбранный ответ во втором даже не скомпилирован ...!
На случай, если кто-то захочет взглянуть, мой код такой:
private void WriteInput( string input )
{
byte[] byteArray = Encoding.UTF8.GetBytes(input);
byte[] asciiArray = Encoding.Convert(Encoding.UTF8, Encoding.ASCII, byteArray);
string finalString = Encoding.ASCII.GetString(asciiArray);
string inputFile = _idFile + ".in";
var batchWriter = new StreamWriter(inputFile, false, Encoding.ASCII);
batchWriter.Write(finalString);
batchWriter.Close();
}