C # - Определение кодировки в файл, записать изменение в файл, используя найденную кодировку

Я написал небольшую программу для итерации по множеству файлов и внесения некоторых изменений, когда найдено определенное совпадение строки. У меня проблема в том, что разные файлы имеют разные кодировки. Итак, что я хотел бы сделать, это проверить кодировку, а затем перезаписать файл в исходной кодировке.

Каким будет самый красивый способ сделать это в C # .net 2.0?

На данный момент мой код выглядит очень простым ;

String f1 = File.ReadAllText(fileList[i]).ToLower();

if (f1.Contains(oPath))
{
    f1 = f1.Replace(oPath, nPath);
    File.WriteAllText(fileList[i], f1, Encoding.Unicode);
}

Я взглянул на Автоматическое определение кодирования в C # , которое заставило меня понять, как я могу обнаруживать кодировку, но я не уверен, как я могу использовать эту информацию для записи в той же кодировке.

Был бы очень признателен за любую помощь здесь.

10
задан Community 23 May 2017 в 12:31
поделиться