Я пытаюсь сделать что-то, что, по моему мнению, должно быть достаточно простым, но я уже потратил на это слишком много времени и испробовал несколько различных подходов, которые исследовал, но безрезультатно.
По сути, у меня есть огромный список имен, в которых есть «специальные» символы из кодировки UTF8.
Моя конечная цель — прочитать каждое имя, а затем сделать HTTP-запрос, используя это имя в URL-адресе в качестве переменной GET.
Моей первой целью было прочитать одно имя из файла и привести его к стандарту, чтобы подтвердить, что я могу правильно читать и писать UTF8, прежде чем создавать строки и выполнять все HTTP-запросы.
Созданный мной файл test1.txt
содержал только следующее содержимое:
Öwnägé
Затем я использовал этот код C# для чтения файла. Я установил кодировку StreamReader
и Console.OutputEncoding
на UTF8
.
static void Main(string[] args)
{
Console.OutputEncoding = System.Text.Encoding.UTF8;
using (StreamReader reader = new StreamReader("test1.txt",System.Text.Encoding.UTF8))
{
string line;
while ((line = reader.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
Console.ReadLine();
}
К моему большому удивлению, я получаю такой вывод:
Ожидаемый результат точно такой же, как и исходное содержимое файла.
Как я могу быть уверен, что строки, которые я собираюсь построить для выполнения HTTP-запросов, будут правильными, если я не могу выполнить даже простую задачу чтения/записи строк UTF8?