📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, ComCtrls;
type
TForm1 = class(TForm)
ADOQuery2: TADOQuery;
Memo1: TMemo;
Button1: TButton;
Label1: TLabel;
Memo2: TMemo;
ProgressBar1: TProgressBar;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
my:array[0..1000000] of string;
mycount,temp:integer;
implementation
{$R *.dfm}
function save(b:string;a:string;c:string):string;
var
saveedit:TStringList;
filename:String; //文件名
filestr:String; //文本字符串
begin
try
createdir(ExtractFilePath(Application.ExeName)+c);
except
end;
filename:=ExtractFilePath(Application.ExeName)+c+a+'.txt'; //名称为exe所在的目录下格式为当前日期.txt
filestr:=b;
saveedit:=TStringList.Create;
saveedit.Text:=filestr;
if Not FileExists(filename) then //判断文件是否存在
saveedit.SaveToFile(filename)//不存在创建
else
begin
saveedit.LoadFromFile(filename);//存在打开
saveedit.add(filestr); //追加
saveedit.SaveToFile(filename);//保存
end;
saveedit.Free; //释放
end;
procedure TForm1.FormCreate(Sender: TObject);
var
st:string;
begin
mycount:=1000000 ;
st:=ExtractFilePath(Application.ExeName);
adoquery2.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+st+'english.mdb;Persist Security Info=False';
memo2.Lines.LoadFromFile(st+'sql.txt');
end;
procedure TForm1.Button1Click(Sender: TObject);
var
sql,mystr:string;
use,z,n,t,i,j,ii,jj,kk,ll,mm,nn,oo,pp,qq,jja,kka,lla,mma,nna,ooa,ppa,qqa:integer;
begin
temp:=0;
j:=0;
for i:=0 to mycount do
my[i]:='';
form1.adoquery2.Close;
form1.adoquery2.SQL.Clear;
sql:=memo2.Text;
form1.adoquery2.SQL.Add(sql);
form1.adoquery2.Open ;
label1.Caption:='一共有'+ inttostr(form1.adoquery2.RecordCount)+'条记录!';
for i:=0 to adoquery2.RecordCount-1 do
begin
if j=5 then
begin
j:=0;
for ii:=temp to mycount do
if my[ii]=''then
begin
temp:=ii;
my[ii]:=mystr;
use:=ii+2;
for jj:=use to mycount do
if my[jj]=''then
begin
my[jj]:=mystr;
use:=jj+5;
for kk:=use to mycount do
if my[kk]=''then
begin
my[kk]:=mystr;
use:=kk+10;
for ll:=use to mycount do
if my[ll]='' then
begin
my[ll]:=mystr;
use:=ll+25;
for mm:=use to mycount do
if my[mm]='' then
begin
my[mm]:=mystr;
use:=mm+60;
for nn:=use to mycount do
if my[nn]='' then
begin
my[nn]:=mystr;
use:=nn+200;
for oo:=use to mycount do
if my[oo]='' then
begin
my[oo]:=mystr;
{
use:=use+500;
for pp:=use to mycount do
if my[pp]='' then
begin
my[pp]:=mystr;
use:=pp+1000;
for qq:=use to mycount do
if my[qq]='' then
begin
my[qq]:=mystr;
break;
end;
break;
end;
}
break;
end;
break;
end;
break;
end;
break;
end;
break;
end;
break;
end;
break;
end;
mystr:='';
end;
j:=j+1;
mystr:=mystr+adoquery2.Fieldbyname('单词').AsString;
mystr :=mystr+' '+ adoquery2.Fieldbyname('翻译').AsString;
mystr :=mystr+' '+ adoquery2.Fieldbyname('频率').AsString+#13#10;
adoquery2.Next;
end;
for n:=0 to mycount do
if my[mycount-n]<>'' then
begin
for t:=0 to mycount-n do
if my[t]<>'' then
memo1.Lines.Add(my[t]+#13#10);
break;
end;
save(memo1.Text,'文件','');
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -