delphi怎么消除空行?trim可以吗?
我做了个客户端,每次接受服务端的信息时之间都会空一行,不知道为什么?

解决方案 »

  1.   

    TRIM 应该可以  不过要TRIM 也就是接收一条TRIM一次
      

  2.   

    1、trim:清除字符串两边的空格,中间有空间的话不会清除
    2、StringReplace ( str, ' ', '', [rfReplaceAll]) 清除所有的空格
    你的客户端接收的信息有一行空行,肯定是你的服务端发送数据的时候有问题
      

  3.   


    trim只能消除空格。。
    或许可以用StringReplace试试 将#13换成‘’
      

  4.   

    读到TStrings中,然后循环Trim,在循环判断每个String,如果为空串删除。那么剩下的就是你想要的了。var
        ss: TStrings;
        iItem: Integer;
    begin
        ss := TStringList.Create;
        ss.Text := Memo1.Text;    for iItem := ss.Count - 1 downto 0 do
        begin
            if trim(ss.Strings[iItem]) = '' then
                ss.Delete(iItem);
        end;    Memo1.Text := ss.Text;
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
        Memo1.Text := '1122344'#$0D#$0A'      '#$0D#$0A'asdffffxxx';
    end;
      

  5.   

    TRIM都不行,楼主检查一下传入的数据
      

  6.   

    StringReplace应该是没问题的
    那个空行有可能是回车
      

  7.   

    有什么办法可以删除memo里面的空行吗?
      

  8.   

    2、StringReplace ( str, ' ', '', [rfReplaceAll]) 清除所有的空格
      

  9.   

    StringReplace ( str, #10#13, '', [rfReplaceAll]) 清除所有空行正常情况下#13#10 回车换行
    这里替换  #10#13 换行回车
    就能去空行了
    我习惯用这招
      

  10.   

    StringReplace ( str, ' ', '', [rfReplaceAll])
    StringReplace ( str, #13, '', [rfReplaceAll])
    StringReplace ( str, #10, '', [rfReplaceAll])