Code
Encoding CheckFileEncoding(string fileName)
{
System.Text.Encoding enc = null;
System.IO.FileStream file = new System.IO.FileStream(fileName,
FileMode.Open, FileAccess.Read, FileShare.Read);
BinaryReader br = new BinaryReader(file);
byte[] bom = new byte[4]; // Get the byte-order mark, if there is one
br.Read(bom, 0, 4);
if ((bom[0] == 0xef && bom[1] == 0xbb && bom[2] == 0xbf) || // utf-8
(bom[0] == 0xff && bom[1] == 0xfe) || // ucs-2le, ucs-4le, and ucs-16le
(bom[0] == 0xfe && bom[1] == 0xff) || // utf-16 and ucs-2
(bom[0] == 0 && bom[1] == 0 && bom[2] == 0xfe && bom[3] == 0xff) || // ucs-4
(bom[1] == 0 && bom[3] == 0)) // only unicode
{
enc = System.Text.Encoding.Unicode;
}
else
{
enc = System.Text.Encoding.ASCII;
}
file.Close();
return enc;
}
将想法付诸于实践,借此来影响他人是一个人存在的真正价值