有以下文本文件:
06.10.2010 03:41:28 03361 :
06.10.2010 03:41:28 03362 :
06.10.2010 03:41:28 03363 :
06.10.2010 03:41:28 03364 :
06.10.2010 03:41:28 03365 :
06.10.2010 03:41:28 03366 :
06.10.2010 03:41:28 03367 :
06.10.2010 03:41:28 03368 :
格式都为以上样子的(有空格,有冒号)我想用程序将它们重新排列成(如第一行):
03361
2010.06.10
03:41:28
并在D:\下生成一个新的文件请问应该要怎么办?
06.10.2010 03:41:28 03361 :
06.10.2010 03:41:28 03362 :
06.10.2010 03:41:28 03363 :
06.10.2010 03:41:28 03364 :
06.10.2010 03:41:28 03365 :
06.10.2010 03:41:28 03366 :
06.10.2010 03:41:28 03367 :
06.10.2010 03:41:28 03368 :
格式都为以上样子的(有空格,有冒号)我想用程序将它们重新排列成(如第一行):
03361
2010.06.10
03:41:28
并在D:\下生成一个新的文件请问应该要怎么办?
{
WINXPSP3 简体中文,Delphi XE 编译通过。
}
var
s,s0, sy, st: string;
i: Integer;
ty,tt: TDateTime;
settings: TFormatSettings;
begin
Memo2.Clear; Memo1.Lines.LoadFromFile('加载你指定的文件');{更改之,必须指定一个存在的文本文件} GetLocaleFormatSettings(GetUserDefaultLCID, settings);
settings.DateSeparator := '.';
settings.TimeSeparator := ':';
settings.ShortDateFormat := 'dd.mm.yyyy';
settings.ShortTimeFormat := 'hh:nn:ss'; for i := 0 to Memo1.Lines.Count - 1 do
begin
s := Memo1.Lines[i];
Delete(s, length(s) -1, 2);{去除最末的空格和冒号}
s0 := Copy(s,1,10);
ty := StrToDate(s0,settings);
sy := FormatDateTime('yyyy.mm.dd',ty);
Memo2.Lines.Add(sy);{处理完日期} Delete(s,1,11);
s0 := Copy(s,1,8);
tt := StrToTime(s0,settings);
st := FormatDateTime('hh:nn:ss',tt);
Memo2.Lines.Add(st);{处理完时间} Delete(s,1,9);
Memo2.Lines.Add(s);{添加最后的数据}
end; Memo2.Lines.SaveToFile('D:\New.txt'); {保存在指定位置}
end;