2011年4月3日日曜日

Guid文字列を得る

Delphiで、Guidを得るには、通常の場合CreateGuid手続きを使用します。
また、Guid文字列を得るする場合には、GuidToString手続きを使用して文字列に変換します。

  1. procedure TForm1.Button1Click(Sender: TObject);  
  2. var  
  3.   guid : TGuid;  
  4. begin  
  5.   CreateGuid(guid);  
  6.   LabeledEdit1.Text := GuidToString(guid);  
  7.   
  8. end;  

Delphi XEでは、TGuid型に対して、TGuidHelperクラスが実装されているので
このHelperを利用してもGuidを得ることができます。
(Helperは.Net FrameworkのGuid構造体と同じ動きをするように実装されている
ようです。但し、.Net側のToStringメソッドでは文字列が中括弧で囲まれないので
注意が必要かなぁ?)

  1. procedure TForm1.Button2Click(Sender: TObject);  
  2. var  
  3.   guid:TGUID;  
  4.   S:String;  
  5. begin  
  6.   guid := TGUID.NewGuid;  
  7.   LabeledEdit1.Text := guid.ToString;  
  8. end;  

TGuidHelperクラスにはGuidの表現形式に応じていくかのCreate関数が用意されていますで
プログラム中で使用している表現形式からGUDIの生成が可能です。

下記の例は、文字列で表現されたGUIDからTGuid型の変数を得る例です。

  1. procedure TForm1.Button3Click(Sender: TObject);  
  2. var  
  3.   guid:TGUID;  
  4. begin  
  5.  guid := TGUID.Create('{1F447130-60E2-40A0-9A00-EB94C1C7D691}');  
  6.   label1.Caption := guid.Tostring; //{1F447130-60E2-40A0-9A00-EB94C1C7D691}が表示される  
  7. end;  

0 件のコメント: