Encoding enc = GetEncording(item.pathFile);
File.WriteAllText(item.pathFile,
File.ReadAllText(item.pathFile, enc).Replace(item.OriginalContent,
item.ChangedContent),
enc);
by using
public Encoding GetEncording(string filePath)
{
Encoding enc = Encoding.Default;
using (var r = new StreamReader(filePath, detectEncodingFromByteOrderMarks: true))
{
enc = r.CurrentEncoding;
}
return enc;
}