stringlist采用delimiter:=#9分割文本总是把空格分隔的文本也分段了。。
如何控制严格只分开tab符分割的文本

解决方案 »

  1.   

    强烈反对你的说法!!!
    试一试这个代码:var
      st: TStrings;
    begin
      st := TStringList.Create;
      st.StrictDelimiter := True;//这个多少人用过?
      st.Delimiter := ' ';
      st.DelimitedText := '0 1 2';//用语言描述就是 [0][空格][1][TAB键][2]
      ShowMessage(st.Text);//你将看到和你想象中不同的结果!!
      st.Free;
    end;
      

  2.   

    To 3楼,是否有验证过,你的那个st.Delimiter := '    ';里面的结果是#9的值?其实象楼主的这个问题,可以通过StringReplace解决,当然,如果是新版本(D2007或更高版本),也可以通过设置LineBreak属性为#9来解决,唯一的问题是此时换行符将不被作为分隔符。
      

  3.   

    同志不要激动,D7是没StrictDelimiter的......
      

  4.   

    我没有激动,只是我很不解:为什么我的 D7 有 StrictDelimiter 这个呢?是不是我曾经做过什么?
      

  5.   

    原来我曾经替换过 D2007 的 RTL ...