|
15番会議室「FAQ編纂委員会」に寄せられた「よくある質問の答え」
[Q]
[2.0J]ランタイムラブラリーの新しい関数・手続きには、SBORLAND MES 9 で
も、Trim(文字列頭尾の空白を取る)というのがあることは話題になったこと
がありますが、ほかにどんなものがありますか?
[A]
一通り目を通してみましたが、まず、新たな型として導入された Variant
型に関した関数・手続きが大量に入れられてるのが目を引きます。そのほか
新たな型として、WideChar 型、TMemoryManager 型が導入されていて、これ
らに関するものが少しあります。
長い文字列に関するものは、String をそのまま流用する形になっているた
めそれほど多くありません。
SetLength(String,Integer);
SetString(String,PChar,Integer);
StringOfChar(Char,Integer): String;
Trim(String): String;
TrimLeft(String): String;
TrimRight(String): String;
UniqueString(String);
といったところです(Variant 型、WideChar 型にまたがるものは省略)。
空白そぎ落とし関数に関しては SBORLAND MES 9 #15855 で、村松 真 師匠
が、全角スペースにも対応された JTrim に関して書かれています。
StringOfChar も、やっと出たかという感じ。
なお、SBORLAND MES 9 でも話題になっていましたけど、StrPCopy(PChar;
String): PChar など、[1.0J]との互換性のために、戻り値が 255 文字に制
限されているように、必ずしも「String」が全て長い文字列を通しているわ
けではなさそうなのでご注意下さい。
また、ここの上の方に、ExtractFilePath 末端に '\' が付くため、これ
をそのまま使って ChDir できないことに関して [FAQ] で挙げられてますけ
ど、
ExtractFileDir(String): String;
というのが入れられました。ルート以外は末端 '\' が付きません。関連して
CreateDir(String): Boolean;
GetCurrentDir: String;
RemoveDir(String): Boolean;
SetCurrentDir(String): Boolean;
いずれも、[1.0J]では手続きで、エラーは例外処理する必要がありましたけど
これらはエラーで False を返すので、少し簡便になりました(GetCurrentDir
はエラーで nil を返す)。
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum FDELPHIに寄せられる質問の中から、よくある質問への回答を FDELPHIのメンバーがまとめたものです。 したがって、これらの回答はボーランド株式会社がサポートする公式のものではなく、掲示されている内容についての問い合わせは受けられない場合があります。
Copyright 1996-1998 Delphi Users' ForumFAQ編纂委員会
|