Delphi XE 的一些新类

    技术2022-05-20  51

    TCharacter类 完全由私人类静态函数组成。开发人员并不需要实例TCharacter,相反,最好只调用它的静态方法。

    这个类包括:

    字符转换为大写或小写,确定什么样的类型属,也就是说,这个数字是字母,标点符号,或别的东西。 TCharacter使用由Unicode协会规定的标准。

    下面的代码:

    uses Character;

    begin if MyChar in [‘a’...’z’, ‘A’...’Z’] then begin   ... end; end;

    可以很容易地被替换如下:

    uses   Character;

    begin if TCharacter.IsLetter(MyChar) then begin     ... end; end;

     

     


    TEncoding 类 它的目的 - 要求特定类型的编码。

     

    例如,你有一个TStringList的实例,包含文字,你要写入一个文件。以前,你可以这样写:

      ...   MyStringList.SaveToFile('SomeFilename.txt');   ...

    现在有一个可选的第二个参数指定编码你想要的:

      ...   MyStringList.SaveToFile(‘SomeFilename.txt’, TEncoding.Unicode);    ...

    运行此代码,该文件将被写在Unicode(UTF - 16中)。

    TEncoding还包括一个功能

    class function TEncoding.GetEncoding(CodePage: Integer): TEncoding;

    返回一个TEncoding,代码页发送到参数的实例。

    此外,它具有以下功能:

    function GetPreamble: TBytes;

    它返回一个给定的编码的BOM。

      var    BOM: TBytes;  begin    ...    BOM := TEncoding.UTF8.GetPreamble;    Write(BOM[0], Length(BOM));

     


    TStringBuilder 类

    这个类可以很简单地创建许多不同类型的字符串。

    例如,你可以写下面的代码:

    procedure TForm86.Button2Click(Sender: TObject); var   MyStringBuilder: TStringBuilder;   Price: double; begin   MyStringBuilder := TStringBuilder.Create('');   try     Price := 1.49;     Label1.Caption := MyStringBuilder.Append('The apples are $').Append(Price).              Append(' a pound.').ToString;   finally     MyStringBuilder.Free;   end; end;

     


     


    最新回复(0)