下面是常用编码的识别符, 在 Delphi(2009) 中如何获取呢?
Unicode: FF FE; BigEndianUnicode: FE FF; UTF8: EF BB BF
var bs: TBytes; b: Byte; str: string; begin {只有 Unicode、BigEndianUnicode、UTF8 编码有识别符} bs := TEncoding.Unicode.GetPreamble; str := ''; for b in bs do str := Format('%s %x', [str, b]); ShowMessage(str); {FF FE} bs := TEncoding.BigEndianUnicode.GetPreamble; str := ''; for b in bs do str := Format('%s %x', [str, b]); ShowMessage(str); {FE FF} bs := TEncoding.UTF8.GetPreamble; str := ''; for b in bs do str := Format('%s %x', [str, b]); ShowMessage(str); {EF BB BF} {ASCII、UTF7 和 Default(默认编码) 没有识别符} bs := TEncoding.ASCII.GetPreamble; str := ''; for b in bs do str := Format('%s %x', [str, b]); ShowMessage(str); {无} bs := TEncoding.UTF7.GetPreamble; str := ''; for b in bs do str := Format('%s %x', [str, b]); ShowMessage(str); {无} bs := TEncoding.Default.GetPreamble; str := ''; for b in bs do str := Format('%s %x', [str, b]); ShowMessage(str); {无} end;