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

請問如何切割TXT

尚未結案
tb1836
一般會員


發表:5
回覆:5
積分:2
註冊:2005-03-29

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-16 16:25:20 IP:218.166.xxx.xxx 未訂閱
我有一個TXT檔有10000筆資料,我想把它分成兩個檔案各5000筆,請問我該怎麼做
懷舊的人
高階會員


發表:28
回覆:152
積分:141
註冊:2003-01-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-16 16:40:03 IP:211.78.xxx.xxx 未訂閱
1. 打開文書編輯器 2. 載入檔案 3. 找到 5000 筆處 4. 剪貼 5. 另存新檔 6. 開新檔 7. 複製貼上 8. 另存新檔 9. 關閉
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-16 16:47:19 IP:61.70.xxx.xxx 未訂閱
您好: 簡單的方式,沒實測過,給您參考.
procedure TForm1.Button2Click(Sender: TObject);
var
 List1,List2:TStringList;
 i,Count:integer;
begin
List1:=TStringList.Create();
List2:=TStringList.Create();
List1.LoadFromFile(您的檔案);
Count:=List.Count;
for i:=5000 to Count-1 do
 begin
  List2.Add(List1.Strings[5001]);//把檔案第5001筆存到另一個List中
  List1.Delete(5001);//刪掉第5001,讓5002變成5001
 end;
List1.SaveToFile(存檔名稱);
List2.SaveToFile(存檔名稱);
end;
x_y_z
一般會員


發表:9
回覆:14
積分:4
註冊:2004-03-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-16 21:55:23 IP:219.86.xxx.xxx 未訂閱
var slSource, slSave: TStringList; i,j: integer; begin slSource := TStringList.Create; slSave := TStringList.Create; try slSource.LoadFromFile('C:\test.txt'); j := 1; for i := 0 to slSource.Count -1 do begin slSave.Add(slSource.Strings[i]); if (i mod 100 = 99) or (i = slSource.Count -1) then begin slSave.SaveToFile('C:\test' IntToStr(j) '.txt'); slSave.Clear; Inc(j); end; end; finally slSave.Free; slSource.Free; end; end;
yhchu
一般會員


發表:2
回覆:70
積分:24
註冊:2004-01-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-06-17 10:14:01 IP:220.130.xxx.xxx 未訂閱
試試看用以下指令: head --lines 5000 source.txt > dest1.txt tail --lines 5000 source.txt > dest2.txt head 和 tail 是 Unix 的標準工具,我都是在 Windows 下使用 Cygwin (http://www.cygwin.com)。另外也有人 port 到 Windows 環境,收錄在 unix95 套件裡面。
系統時間:2024-06-26 22:42:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!