易截截图软件、单文件、免安装、纯绿色、仅160KB

delphi实现批量读取格式有规律的文本文件的内容.

现有一系统不定时在同一目录下生成一批txt文件,内容大概如下;
      20100112_164910,6,81406392,808,113,,
为方便统计,需要将这些txt文件中的数据读入数据表中.
现有两种方法:
   一是直接将数据读入到数据表中的某一列中,再用sql 语句拆开成几列: 
       20100112_164910   6     81406392      808         113
  二是在导入时就将其拆开成几列分别导入到各列中
如果第二种方法可以实现,那么对于系统的性能将会是一个很大的帮助.
下面介绍我的做法,可能是最笨重的一种,欢迎大家提出更好的方法.
   核心方法是调用memo的Delimiter特性. 若把Delimiter的值设为",",那么使用DelimitedText属性可得到由","分开的几行.
需要两个memo,第一个memo将文档中的内容读入,第二个memo将第一个memo中的内容分解成几行.
如上面的例子就会变成:
20100112_164910 
6
81406392
808
113
接下来的事情就变得比较简单了.当然这里面循环是肯定少不了的了.
下面是全部代码:
第一步:新建一个带参数的过程: 参数是文件名
var
    F:text; 
procedure TForm1.Insert(FileName:string);
var
  s: string;
  i:integer;
begin
  AssignFile(F,FileName); //将文件的内容读到F中
  Reset(F);
  Memo1.Clear;
  while not Eof(F) do
   begin
    Readln(F, s);       //再将F中的内容读到S中
    Memo1.Lines.Add(s); //将内容加入memo中
   end;
   CloseFile(F);
 if  memo1.Lines.Count>=1 then
 begin
   for i:=0 to memo1.Lines.Count-2 do
   begin
      if length(memo1.Lines[i])>4 then
      begin
      Memo2.Lines.Delimiter := ',';
      Memo2.Lines.DelimitedText := memo1.Lines[i];
       //下面两句是业务处理语句,把相关的内容插入表中
    &n


相关文档:

引用 [转]delphi编译错误中英对照表

在编译delphi程序时会出现在些提示,全是E文的,现在给大家一个对照表,可以更好的理解错误提示信息!
';' not allowed before 'ELSE' ElSE前不允许有“;”
'' clause not allowed in OLE automation section 在OLE自动区段不允许“”子句
'' is not a type identifier 不是类型标识符
'' not prev ......

Delphi下实现包含通配符的文本查找

本文最早在编程论坛上发表,文章地址:http://programbbs.com/bbs/view12-21351-1.htm,相关文件可以在上述地址的页面中下载。转载时请注明出处。
一、前言
通配符就是指“*”和“?”两个字符,“*”表示当前位置可以没有或者有多个任意字符;“?”表示当前位置有一个任意字符。 ......

Delphi 动态创建窗口的几种方法

  方法1:可写为函数,再调用
  Application.CreateForm(TForm1, Form1);
  Form1.ShowModal;
  Form1.Free;
  方法2:
  Form1:= TForm1.Create(Application);
  try
     Form1.ShowModal;
  finally
     ......

SDL & Object Pascal (Delphi) [3] 制作一个选单


一个选单大致是这样:
1.可以被以某种形式呼叫出来,如按下esc;
2.在这个选单中功能键有不同的定义,如原本方向键控制走路,但现在改为控制光标的位置;
3.按下确定键后有对应功能被执行;
4.可以被关闭。
那么我的办法是编写两个子程,其中一个处理选单中的事件,另外一个专门负责画选单。
在从步行切换到选单 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号