Ejemplo n.º 1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="XmlEncodingBOM"/> class.
 /// </summary>
 XmlEncodingBOM()
 {
     DefaultXmlEncodings = new XmlEncodingBOM[10] {
         new XmlEncodingBOM("UTF-8", Encoding.UTF8, 3, new byte[3] {
             0xEF, 0xBB, 0xBF
         }),
         new XmlEncodingBOM("UTF-16", Encoding.BigEndianUnicode, 2, new byte[2] {
             0xFE, 0xFF
         }),
         new XmlEncodingBOM("UTF-16", Encoding.Unicode, 2, new byte[2] {
             0xFF, 0xFE
         }),
         new XmlEncodingBOM("UTF-32", Encoding.UTF32, 4, new byte[4] {
             0x00, 0x00, 0xFE, 0xFF
         }),
         new XmlEncodingBOM("UTF-32", Encoding.UTF32, 4, new byte[4] {
             0xFF, 0xFE, 0x00, 0x00
         }),
         new XmlEncodingBOM("UTF-7", Encoding.UTF7, 4, new byte[4] {
             0x2B, 0x2F, 0x76, 0x38
         }),
         new XmlEncodingBOM("UTF-7", Encoding.UTF7, 4, new byte[4] {
             0x2B, 0x2F, 0x76, 0x39
         }),
         new XmlEncodingBOM("UTF-7", Encoding.UTF7, 4, new byte[4] {
             0x2B, 0x2F, 0x76, 0x2B
         }),
         new XmlEncodingBOM("UTF-7", Encoding.UTF7, 4, new byte[4] {
             0x2B, 0x2F, 0x76, 0x2F
         }),
         new XmlEncodingBOM("ASCII", Encoding.ASCII, 0, null)
     };
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Gets the bom string.
        /// </summary>
        /// <param name="ByteArray">The byte array.</param>
        /// <returns></returns>
        public static string GetBOMString(byte[] ByteArray)
        {
            byte[]         fileData;
            string         strOut;
            XmlEncodingBOM encBOM   = XmlEncodingBOM.GetEncodingBOM(ByteArray);
            int            FileSize = ByteArray.Length;

            if (encBOM.BOMLength > 0)
            {
                fileData = new byte[FileSize - encBOM.BOMLength];
                Array.Copy(ByteArray, encBOM.BOMLength, fileData, 0, FileSize - encBOM.BOMLength);
            }
            else
            {
                fileData = ByteArray;
            }
            strOut = encBOM.TextEncoding.GetString(fileData);
            return(strOut);
        }