关于从一个文本取一些项目,然后生成另一个文本的问题?(100分)

  • 主题发起人 主题发起人 axf
  • 开始时间 开始时间
A

axf

Unregistered / Unconfirmed
GUEST, unregistred user!
选取了文本1中的一些项目,生成文本2这样的格式。
文本1中每一项之间有“ ^ ”这样的分隔符,文本2各项之间是空格分隔。
最好能给出源代码,各位高手多多帮助!
文本1:
402001^土地矿产资源管理局^行政^0^3010010001^刘文政^381001100003612^342401351211141^03^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^180.00^.00^.00^.00^62.02^.00^951.40^109.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^1302.42^.00^.00^.00^.00^.00^.00^.00^1303.42^
402001^土地矿产资源管理局^行政^0^3010010002^王海陆^381001100003613^342401351211142^03^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^180.00^.00^.00^.00^62.02^.00^951.40^109.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^1302.42^.00^.00^.00^.00^.00^.00^.00^1302.42^
402001^土地矿产资源管理局^行政^0^3010010003^张一环^381001100003614^342401351211143^03^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^180.00^.00^.00^.00^62.02^.00^951.40^109.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^1302.42^.00^.00^.00^.00^.00^.00^.00^1309.42^
402001^土地矿产资源管理局^行政^0^3010010004^田野去^381001100003615^342401351211144^03^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^180.00^.00^.00^.00^62.02^.00^951.40^109.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^1302.42^.00^.00^.00^.00^.00^.00^.00^1308.42^
文本2:
00000000003010010001刘文政 381001100003622342401351211141 1303.42
00000000003010010002王海陆 381001100003632342401351211142 1302.42
00000000003010010003张一环 381001100003642342401351211143 1309.42
00000000003010010004田野去 381001100003652342401351211144 1308.42
 
將文本1中的內容Copy需要的片段
應該要用到文本1中"^"的位置
再貼到文本2中?
 
用COPY函数作一个循环就可以了。(没有测试,随手写的,希望可以)
var
S,SubS:String;
Memo:TMemo;
I,J,K:Integer;
begin
Memo:=TMemo.Create(Form1);
Memo.Parent:=Form1;
Memo.Visible:=False;
Memo.Lines.LoadFromFile('File1.Txt');
S:=Memo.Text;
J:=Length(S);
K:=Length('402001^土地矿产资源管理局^行政^0^3010010001^刘文政^381001100003612^342401351211141^03^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^180.00^.00^.00^.00^62.02^.00^951.40^109.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^.00^1302.42^.00^.00^.00^.00^.00^.00^.00^1303.42^');
J:=J div K;
Memo.Lines.Clear;
for I:=1 to J do
begin
SubS:=Copy(S,(I-1)*K+1,K);
Memo.Lines.Add(Copy(SubS,....)+Copy(SubS,....)+ ....);
end;
Result:=Memo.Text;
end;
 
这个程序经测试不能用!能否在改动?
 
后退
顶部