TStringListを使って "ipconfig/all"の出力を解析したいと思います。TStringListに大きな文字列を追加する方法
AddStringsを使用すると、戻り文字列全体が最初の要素になります。私はLoadFromStreamを使用しようとしましたが、コンパイラが「LoadFromStream」生きていない
と
候補関数の呼び出しのために私
ノー一致するメンバ関数を与えない:から知られていない変換 "最初の引数のための 'System :: Classes :: TStream *'(別名 'System :: UnicodeString')
Stringをストリームに取得する方法、またはTStringListに返すStringを取得する別の方法はありますか?
TStringList *IPConfig = new TStringList; IPConfig->AddStrings(ExecuteExternalFile("ipconfig", "/all", false)); //everything returned ends up in one element defeating the purpose of using a TStringList IPConfig->LoadFromStream(ExecuteExternalFile("ipconfig", "/all", false)); //won't compile
は 'STRING'のインスタンスで管理される各文字列の場合や、各文字列の終わりを示す改行文字でちょうど1つの文字列のですか? 'ExecuteExternalFile'が' TStringList'を返すのはなぜでしょうか? –
正しく覚えていれば、 'TStringList'の' Delimiter'プロパティで遊ぶ必要があります。私がVCLを使ってからしばらくしてきました。 – user4581301
ExecuteExternalFileは、改行文字を含む1つの巨大なStringを返しています。 ExecuteExternalFileがTStringListを返すようにする方法はありますか?それはWindowsの関数なので、私はそれが何であるかと考えて、返されたStringをそのまま扱わなければならないのですか? – martinarcher