我从来没有接触过DELPHI的数据库(学过EXCEL,FOXBASIC....)
现在想用DELPHI来写两个程序,具体如下:
1、程序A
后台打开aaa.txt(就是后台自动打开,只读不写)当读到如abc字段时自动在bbb.txt文件里写入1.当读到bcd字段时在bbb.txt文件里写入2...其他依次类推.以上工作都是在后台运行的,就是不显示.
(不是病毒程序)
2、程序B(使用DBGRID)
读取bbb.txt文件,当读到1时,COLUMNS1显示为“你好吗”,当读到2时,COLUMNS2显示为“我爱DELPHI”,当读到3时,COLUMNS2显示为“我爱CSDN”,依次类推。以上,需要用到什么控件与代码麻烦各位详解,我对DBGRID跟本不了解,更不用说ADO什么的,麻烦大家帮忙点点金。 

解决方案 »

  1.   

    Procedure NewTxt(FileName:String);
    Var
     F : Textfile;
    Begin
       if fileExists(FileName) then DeleteFile(FileName); {看文件是否存在,在就刪除}
     AssignFile(F, FileName); {将文件名与变量 F 关联}
     ReWrite(F); {创建一个新的文件并命名为 ek.txt}
     Writeln(F, '将您要写入的文本写入到一个 .txt 文件');
     Closefile(F); {关闭文件 F}
    End;Procedure OpenTxt(FileName:String);
    Var
     F : Textfile;
    Begin
     AssignFile(F,FileName); {将文件名与变量 F 关联}
     Append(F); {以编辑方式打开文件 F }
     Writeln(F, '将您要写入的文本写入到一个 .txt 文件');
     Closefile(F); {关闭文件 F}
    End;Procedure ReadTxt(FileName:String);
    Var
     F : Textfile;
     str : String;
    Begin
     AssignFile(F, FileName); {将文件名与变量 F 关联}
     Reset(F); {打开并读取文件 F }
     Readln(F, str);
     ShowMessage('文件有:' +str + '行。');
     Closefile(F); {关闭文件 F}
    End;procedure TForm1.Button1Click(Sender: TObject);
    begin
     NewTxt;
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
     OpenTxt;
    end;procedure TForm1.Button3Click(Sender: TObject);
    begin
     ReadTxt;
    end; 
    ------------------------------------------------------------------Procedure AppendTxt(Str:String;FileName:String);
    Var
        F:Textfile;
    Begin
    AssignFile(F, FileName);
    Append(F);
    Writeln(F, Str);
    Closefile(F);
    End;
    c
      

  2.   

    第2個不知道你是要連接dbgrid,還是後台讀取了txt直接顯示它的列名呢?如果是後者,直接寫它列的caption...
      

  3.   

    首先,你的要求不能用dbgrid,因为你操作的不是数据集,dbgreid是数据感知组件,所以你可以用其他非db的grid,比如stringgrid来显示你要的东西,读取txt有很多方法,简单点可以上有TStringlist,memo直接读取,比如memo1.lines.loadfromfile
      

  4.   

    哇,回答我问题的都是此版块的"活跃份子",好幸福...
    请问怎么后台打开一个.TXT文件(),代码怎么写 Reset(F); {打开并读取文件 F }这个是后台打开的意思吗?
    第2个是要在第1个程序完成后生成的bbb.txt的基础上完成:"读取bbb.txt文件,当读到1时,COLUMNS1显示为“你好吗”,当读到2时,COLUMNS2显示为“我爱DELPHI”,当读到3时,COLUMNS2显示为“我爱CSDN”,依次类推。"不是必须用DBGRID...只要能达到效果就行再次感谢各位的热心回答
      

  5.   

    其实你可以查一下Delhpi对Textfile操作,能Google到很多东西的
      

  6.   

    我想了下,我可能没有把我想问的表达清楚...
    是这样的,已经有一个文件在D:\ 文件名为jilu.txt
    现在我想写一个程序,要求达到如下功能:
    1、将jilu.txt文件复制到D:\xyz\下,并且每过30秒就把原来的jilu.txt文件删除,然后再复制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       : 
    格式都为以上样子的(有空格,有分号)
    2、后台打开D:\xyz下的jilu.txt,先将最后一行的时间和日期记录到bbb.txt文件下,然后从第一行开始读取时间后的一串数字,比如读到03361,就在bbb.txt文件下写入“你好”,读到03362,就在bbb.txt文件下写入“DELPHI”....时间后面的数字非常多(大约会超过500个以上的可能),我在这里想做个类似数据库样的东西,当读到哪串数字时就显示对应的字符
    先将这个解决掉再想其他的...谢谢大家