TStringList的DelimitedText的空格問題
如果DelimitedText的字符串中有空格,TStringList遇到空格會進行自動換行,而這顯然不是我們想要的結果。
經測試發現D7~D10.2.2都是這樣的,然而這卻不是TStringList的BUG。
解決這個問題的方法需要修改classes.pas的源碼。
procedure TStrings.SetDelimitedText(const Value: string);
var
P, P1: PChar;
S: string;
begin
BeginUpdate;
try
Clear;
P := PChar(Value);
while P^ in [#1..' '] do
{$IFDEF MSWINDOWS}
P := CharNext(P);
{$ELSE}
Inc(P);
{$ENDIF}
while P^ <> #0 do
begin
if P^ = QuoteChar then
S := AnsiExtractQuotedStr(P, QuoteChar)
else
begin
P1 := P;
// while (P^ > ' ') and (P^ <> Delimiter) do // by cxg
while (P^ > '') and (P^ <> Delimiter) do