class function T_EShopDataBill.ImportData(const AFileName: String;
AList: T_EShopDataModelList; var AErr: string): Boolean;
var
Book: IXLSWorkbook;
ws: IXLSWorksheet;
i : Integer;
nOrderIDRow,nTrackNoRow : Integer;
obj : T_EShopDataModel;
tmpIden,tmpTrackNo : String;
sSql : String;
tmpQry : TADOQuery;
begin
Book := TXLSWorkbook.Create ;
try
i := Book.Open(AFileName);
ws := Book.WorkSheets[]; if ws.UsedRange.Rows.Count = then
Exit; nOrderIDRow := ;
nTrackNoRow := ;
for I := to ws.UsedRange.Rows[].Count - do
begin
if nOrderIDRow = then
if CompareText( VarToStr( ws.UsedRange.Cells[,i].Value),'单据备注') = then
nOrderIDRow := i; if nTrackNoRow = then
if CompareText( VarToStr( ws.UsedRange.Cells[,i].Value),'运单编号') = then
nTrackNoRow := i; if (nOrderIDRow > ) AND (nTrackNoRow > ) then
Break;
end; // ShowInformationMsg(inttostr(nOrderIDRow)+' '+IntTostr(nTrackNoRow));
if (nOrderIDRow = ) or (nTrackNoRow = ) then
Exit; for i := to ws.UsedRange.Rows.Count do
begin
with ws.UsedRange do
begin
if VarIsNull(Cells[i,nTrackNoRow].Value) then
Break;
if VarIsNull(Cells[i,nOrderIDRow].Value) then
Break;
end; tmpTrackNo := ws.UsedRange.Cells[i,nTrackNoRow].Value;
tmpIden := ws.UsedRange.Cells[i,nOrderIDRow].Value; if ( Trim(tmpTrackNo) = '') or (tmpIden = '') then
begin
Break;
end; obj := T_EShopDataModel.Create;
obj.fOrderID := tmpIden;
obj.fTrackNo := tmpTrackNo;
AList.List.Add(obj);
end;
finally
Book.Close;
end;
end

NativeExcel 读取文件的更多相关文章

  1. Java 创建文件夹和文件,字符串写入文件,读取文件

    两个函数如下: TextToFile(..)函数:将字符串写入给定文本文件: createDir(..)函数:创建一个文件夹,有判别是否存在的功能. public void TextToFile(fi ...

  2. C#读取文件为byte[]

    C#读取文件为byte[] 转载请注明出处 http://www.cnblogs.com/Huerye/ /// <summary> /// 读取程序生成byte /// </sum ...

  3. HTML5的File API读取文件信息

    html结构: <div id="fileImage"></div> <input type="file" value=" ...

  4. 关于一些对map和整行读取文件操作

    public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...

  5. 使用java读取文件夹中文件的行数

    使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...

  6. Matlab 读取文件夹中所有的bmp文件

    将srcimg文件下的bmp文件转为jpg图像,存放在dstimg文件夹下 str = 'srcimg'; dst = 'dstimg'; file=dir([str,'\*.bmp']); :len ...

  7. JavaWeb中读取文件资源的路径问题

    在做javaweb开发的时候,我们可能会需要从本地硬盘上读取某一个文件资源,或者修改某一个文件,这个时候就需要先找到这个文件,然后用FileInputStrem等文件字节.字符流来将这个文件读取到内存 ...

  8. File API 读取文件小结

    简单地说,File API只规定怎样从硬盘上提取文件,然后交给在网页中运行的JavaScript代码. 与以往文件上传不一样,File API不是为了向服务器提交文件设计的. 关于File API不能 ...

  9. php函数fgets读取文件

    如果一个文件比较大,可以考虑用fgets函数 下面是个例子: #文件作用:fgets读取文件 $start_time = microtime(true); $file_name = "a.t ...

随机推荐

  1. 10+ commonly using find command switches with example Unix/Linux

    http://crybit.com/find-command-usage-with-example-unixlinux/ find command is one of the best search ...

  2. VS VC++ 设置版本号

    我并不是专职的VC++的开发者,只是有时候偶尔要开发一些C++的DLL,每当要发布新版本的时候,隔得时间长一点总会忘记了在那里设置生成文件的版本号. 在这里把VC++设置的步骤记录下来,以备忘! 设置 ...

  3. Windows Service 之 详解(二)

    一.创建 Windows 服务程序 1.文件 → 新建 → 项目 → 选择 Windows 服务模板,创建 WinService 项目: 选择这个服务的属性,可以打开属性对话框.可配置如下值: [1] ...

  4. Turn the pokers

    Problem Description During summer vacation,Alice stay at home for a long time, with nothing to do. S ...

  5. python(3)-动态参数实现字符串格式化

    s1 = "{0} ===> {1}" s = s1.format('lilei', 'boy') print(s) l = ['lilei', 'boy'] s = s1. ...

  6. Url几个常用的函数

    parse_url() 本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分. 本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分.不完整的 URL ...

  7. Linux基本命令之逻辑测试一

    1.判断一个命令的结果使用test,其返回0,或一个整数.返回0表示true,返回整数表示错误码 2.获取上一个命令的返回结果使用$? 3.例如 我的服务器上面存在/home/www这样一个文件夹,所 ...

  8. 【单峰函数,三分搜索算法(Ternary_Search)】UVa 1476 - Error Curves

    Josephina is a clever girl and addicted to Machine Learning recently. She pays much attention to a m ...

  9. 关于类型“LinkButton”的控件“xxx”必须放在具有 runat=server 的窗体标记内问题的解决方案

    1.首先确认LinkButton控件包含在Form中,检查该Form有无runat标记,如果有,排除Form原因,请继续看. 2.如果看到这里,估计你是在做Excel导出功能.在后台代码中重写Veri ...

  10. EWM Matrai B2B管理平台

    该应用是一款企业管理的app,可以通过“分享”.“工作分派”.“审批”.“业务”.“工作计划”.“日程”等功能得到有效的管控.该项目主要分为5大模块,分别是近期动态,任务,日程,我,在线聊天.