想用程序实现自动运算,数据源来自一个文本文件,
这个文本文件中的内容如下:
--------------------------------------------------------------------------------
17Aug05/639 am EDT/ 1039 GMT
Prem./Disc.
Tapis -68.47-68.51- 1.10/1.20 Labuan -68.92-68.96-
Griffin -65.47-65.51- -1.90/-1.80 Miri -68.87-68.91-
Cossack -65.42-65.46- -1.95/-1.85 Gippsland-65.47-65.51-
Kutubu -65.32-65.36- -2.05/-1.95 Daqing -59.51-59.55-
Nanhai -65.37-65.41- -2.00/-1.90 Shengli -54.75-54.79-
NW Shelf -62.63-62.67- -5.60/-5.50 *
Bach Ho -62.30-62.34- -1.25/-1.15
Nile Blend -57.95-57.99- -3.55/-3.45 **
Paper: Tapis Sep -67.87-67.91- Oct -67.32-67.36---------------------------------------------------------------------------------
比如我想取Nanhai 后面的 65.37 和 65.41这两个数,进行加法运算
怎么样能取出这两个数?!?!
这个文本文件中的内容如下:
--------------------------------------------------------------------------------
17Aug05/639 am EDT/ 1039 GMT
Prem./Disc.
Tapis -68.47-68.51- 1.10/1.20 Labuan -68.92-68.96-
Griffin -65.47-65.51- -1.90/-1.80 Miri -68.87-68.91-
Cossack -65.42-65.46- -1.95/-1.85 Gippsland-65.47-65.51-
Kutubu -65.32-65.36- -2.05/-1.95 Daqing -59.51-59.55-
Nanhai -65.37-65.41- -2.00/-1.90 Shengli -54.75-54.79-
NW Shelf -62.63-62.67- -5.60/-5.50 *
Bach Ho -62.30-62.34- -1.25/-1.15
Nile Blend -57.95-57.99- -3.55/-3.45 **
Paper: Tapis Sep -67.87-67.91- Oct -67.32-67.36---------------------------------------------------------------------------------
比如我想取Nanhai 后面的 65.37 和 65.41这两个数,进行加法运算
怎么样能取出这两个数?!?!
mFileName,mStr:String;
mFile:TextFile;
mCalc:Double;
begin
mFileName:='你指定的文本文件';
if FileExists(mFileName) then
begin
AssignFile(mFile,mFileName);
Reset(mFile); //打开指写的文本文件
while not Eof(mFile) do
begin
Readln(mFile,mStr);
if copy(mStr,1,6)='Nanhai' then
mCalc:=StrToFloat(copy(mStr,起始位1,个数1))+StrToFloat(copy(mStr,起始位2,个数2));
end;
CloseFile(mFile);
end;
而且有几行是两个数据
Tapis -68.47-68.51- 1.10/1.20 Labuan -68.92-68.96-怎么编一个针对任何数据文件的文件的计算算法呢?