全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:728
推到 Plurk!
推到 Facebook!

請問一個字串的 "abc#&#123" 的問題??

尚未結案
a02
一般會員


發表:10
回覆:4
積分:2
註冊:2004-01-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-09 17:37:27 IP:203.69.xxx.xxx 未訂閱
有一文字檔是以 #&# 為分隔符號,舉例如下: a.txt aaa #{#&# aaa#&# bbb #ř#&# ccc#&# 我要分別取出以 #&#為分隔符號的值,以ReadLn(s,p_str)取得一列的值後,ShowMessage(p_str); 發現居然結果為 aaa ##123## aaa## 請問這該如何處理啊???謝謝
allenchan
資深會員


發表:10
回覆:306
積分:283
註冊:2004-01-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-12-09 17:57:02 IP:203.70.xxx.xxx 未訂閱
參考一下這一篇: http://delphi.ktop.com.tw/topic.php?topic_id=61140    
function Split(s, delimiter: string): TStrings;
begin
  Result := TStringList.Create;
  Result.Text := StringReplace(s,delimiter,#13,[rfReplaceAll, rfIgnoreCase]);
end;    procedure TForm1.Button1Click(Sender: TObject);
var
  S: TStrings;
begin
  S := Split(p_str,'#&#');
  try
    if Assigned(S) then ShowMessage(S[0]);
  finally
    FreeAndNil(S);
  end;
end;
發表人 - allenchan 於 2004/12/10 00:06:41
jow
尊榮會員


發表:66
回覆:751
積分:1253
註冊:2002-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-12-09 18:00:44 IP:220.130.xxx.xxx 未訂閱
之前有人問過類似的問題,請參考以下的程式片段
procedure TForm3.Button1Click(Sender: TObject);
var
  R, S: TStrings;
begin
  if FileExists('A.TXT') then
  begin
    R := TStringList.Create;
    try
      R.LoadFromFile('A.TXT');
      try
        S := Split(R.Text,'#&#');//[red]已分隔的字串
      finally
        FreeAndNil(S);
      end;
    finally
      FreeAndNil(R);
    end;
  end;
end;    function Split(s, delimiter: string): TStrings;
begin
  Result := TStringList.Create;
  Result.Text := StringReplace(s,delimiter,#13,[rfReplaceAll, rfIgnoreCase]);
end;    
系統時間:2024-07-05 2:27:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!