procedure TForm1.Button2Click(Sender: TObject); var i, j, k: Integer; SNum: string; Num: string; lst:TStrings; begin lst:=TStringList.Create; for i := 0 to 20 do begin for j := 0 to 5 do begin Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' '; SNum := num + Snum; k := i * 4 + j; if (K mod 7 = 0) and (K <> 0) then begin // ShowMessage(IntToStr(i) + ' : ' + IntToStr(j) + ' : ' + IntToStr(k)); //Txtmem.Lines.Add(SNum); lst.Add(SNum); SNum:=''; end; {注释掉 if AAAAAAA then begin 剩余的不够七个的添加到Lst里为一行 end; } end; end; //跳出循环后,如果SNum不为空字符串的话, //就是最后不足7个的数据,在这里加入Lst中 lst.Add(SNum);
procedure TForm1.Button2Click(Sender: TObject); var i, j, k: Integer; SNum: string; Num: string; lst:TStrings; begin lst:=TStringList.Create; for i := 0 to 20 do begin for j := 0 to 5 do begin Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' '; SNum := num + Snum; k := i * 4 + j; if (K mod 7 = 0) and (K <> 0) then begin // ShowMessage(IntToStr(i) + ' : ' + IntToStr(j) + ' : ' + IntToStr(k)); //Txtmem.Lines.Add(SNum); lst.Add(SNum); SNum:=''; end; {注释掉 if AAAAAAA then begin 剩余的不够七个的添加到Lst里为一行 end; } end; end; //跳出循环后,如果SNum不为空字符串的话, //就是最后不足7个的数据,在这里加入Lst中 if Trim(SNum) <> '' then lst.Add(SNum);
procedure TForm1.Button2Click(Sender: TObject); var i, j, k: Integer; SNum: string; Num: string; lst:TStrings; tmpPath: string; begin lst:=TStringList.Create; k:= 0; //初始化k for i := 0 to 20 do begin for j := 0 to 5 do begin Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' '; SNum := num + Snum; Inc(k); //k:=k+1; if (K mod 7 = 0) and (K <> 0) then begin lst.Add(SNum); SNum:=''; end; end; end; if Trim(SNum)<>'' then lst.Add(SNum); //写到当前目录 tmpPath:= ExtractFilePath(ParamStr(0)); lst.SaveToFile(tmpPath + '\2.txt'); end; 前面没仔细看代码。
procedure TForm1.btnArrayHHClick(Sender: TObject); var i, j, k, s: Integer; SNum: string; Num: string; lst:TStrings; begin lst:=TStringList.Create; s := 20 * 5 ; k := 0 ; for i := 0 to 19 do //20行 begin for j := 1 to 5 do //5列 begin Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' '; SNum := Snum + num; k := (i*5) + j ; if K > 0 then begin if (K mod 7 = 0) then begin lst.Add(SNum); SNum := '' ; end else begin if (k = s) then begin lst.Add(SNum); end end; end; end; end; lst.SaveToFile('D:\2.txt'); end;
var
i, j, k: Integer;
SNum: string;
Num: string;
lst:TStrings;
begin
lst:=TStringList.Create;
for i := 0 to 20 do
begin
for j := 0 to 5 do
begin
Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' ';
SNum := num + Snum;
k := i * 4 + j;
if (K mod 7 = 0) and (K <> 0) then
begin
// ShowMessage(IntToStr(i) + ' : ' + IntToStr(j) + ' : ' + IntToStr(k));
//Txtmem.Lines.Add(SNum);
lst.Add(SNum);
SNum:='';
end;
{注释掉
if AAAAAAA then
begin
剩余的不够七个的添加到Lst里为一行
end;
}
end;
end;
//跳出循环后,如果SNum不为空字符串的话,
//就是最后不足7个的数据,在这里加入Lst中
lst.Add(SNum);
//Txtmem.Lines.SaveToFile('D:\1.txt');
lst.SaveToFile('D:\2.txt');
end;
var
i, j, k: Integer;
SNum: string;
Num: string;
lst:TStrings;
begin
lst:=TStringList.Create;
for i := 0 to 20 do
begin
for j := 0 to 5 do
begin
Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' ';
SNum := num + Snum;
k := i * 4 + j;
if (K mod 7 = 0) and (K <> 0) then
begin
// ShowMessage(IntToStr(i) + ' : ' + IntToStr(j) + ' : ' + IntToStr(k));
//Txtmem.Lines.Add(SNum);
lst.Add(SNum);
SNum:='';
end;
{注释掉
if AAAAAAA then
begin
剩余的不够七个的添加到Lst里为一行
end;
}
end;
end;
//跳出循环后,如果SNum不为空字符串的话,
//就是最后不足7个的数据,在这里加入Lst中
if Trim(SNum) <> '' then
lst.Add(SNum);
//Txtmem.Lines.SaveToFile('D:\1.txt');
lst.SaveToFile('D:\2.txt');擦,少了个判断。郁闷。
end;
哦,反了,是
SNum<>''
var
i, j, k: Integer;
SNum: string;
Num: string;
lst:TStrings;
tmpPath: string;
begin
lst:=TStringList.Create;
k:= 0; //初始化k
for i := 0 to 20 do
begin
for j := 0 to 5 do
begin
Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' ';
SNum := num + Snum;
Inc(k); //k:=k+1;
if (K mod 7 = 0) and (K <> 0) then
begin
lst.Add(SNum);
SNum:='';
end;
end;
end;
if Trim(SNum)<>'' then
lst.Add(SNum);
//写到当前目录
tmpPath:= ExtractFilePath(ParamStr(0));
lst.SaveToFile(tmpPath + '\2.txt');
end;
前面没仔细看代码。
var
i, j, k, s: Integer;
SNum: string;
Num: string;
lst:TStrings;
begin
lst:=TStringList.Create;
s := 20 * 5 ;
k := 0 ;
for i := 0 to 19 do //20行
begin
for j := 1 to 5 do //5列
begin
Num := 'AAAA='+IntToStr(i)+IntToStr(J)+' ';
SNum := Snum + num;
k := (i*5) + j ;
if K > 0 then
begin
if (K mod 7 = 0) then
begin
lst.Add(SNum);
SNum := '' ;
end
else
begin
if (k = s) then
begin
lst.Add(SNum);
end
end;
end;
end;
end;
lst.SaveToFile('D:\2.txt');
end;
想着一个类处理所有逻辑。
分步处理。
1. 把Excel 里的内容,全都保存到一个 TList 或者 TStringList 中。
2. 直接用一个 int 变量,取出一个增加1.
满 7 个的时候,加回车。