Reading a text file using a specific encoding in C# .NET
December 30, 2014 2 Comments
In this post we saw how to save a text file specifying an encoding in the StreamWriter constructor. You can indicate the encoding type when you read a file with StreamWriter’s sibling StreamReader. Normally you don’t need to worry about specifying the code page when reading files. .NET will automatically understand most encoding types when reading files.
Here’s an example how you can read a file with a specific encoding type:
string filename = string.Concat(@"c:\file-utf-seven.txt"); StreamWriter streamWriter = new StreamWriter(filename, false, Encoding.UTF7); streamWriter.WriteLine("I am feeling great."); streamWriter.Close(); using (StreamReader reader = new StreamReader(filename, Encoding.UTF7)) { Console.WriteLine(reader.ReadToEnd()); }
Read all posts dedicated to file I/O here.
Also we can specify the encoding when using File methods:
File.WriteAllText(filePath, content, Encoding.UTF8);
var data = File.ReadAllText(path, Encoding.GetEncoding(“windows-1256”));
That’s correct, thanks for your input.
//Andras