| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3349 人关注过本帖
标题:是否可以用编程的方法将*.cds格式转换为*.xls?
只看楼主 加入收藏
cymjx
Rank: 2
等 级:论坛游民
帖 子:74
专家分:29
注 册:2010-11-9
结帖率:100%
收藏
已结贴  问题点数:100 回复次数:10 
是否可以用编程的方法将*.cds格式转换为*.xls?
本人在工作中常遇到一些*.cds的数据,需要转换为*.xls才能在VF中处理,我想问一下各位老师能否用VFP6.0编程的方法来实现将*.cds格式转换为*.xls?
在此先谢谢啦!
搜索更多相关主题的帖子: 格式转换 编程 
2012-02-19 10:52
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:14 
发一个.cds格式文件上来看看。

相互学习,互相交流,共同提高。
2012-02-19 12:51
qingfameng
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:35
帖 子:964
专家分:3019
注 册:2010-2-6
收藏
得分:14 
vfp 直接转换有难度。因为无 Tclientdataset 控件。给你一段 Delphi 的说明。(看看是否有帮助)

TClientDataSet控件继承自TDataSet,其数据存储文件格式扩展名为?.cds,是基于文件型数据存储和操作的控件。该控件封装了对数据进行操作处理的接口和功能,而本身并不依赖某些数据库驱动程序,基本上能满足单机 "瘦 "数据库应用程序的需要。
  1.TClientDataSet的基本属性和方法介绍
  1).FieldDefs:   字段定义列表属性
  开发者可通过单击属性编辑器中该属性编辑按钮,或在该控件上单击右键选择弹出菜单中的 "Fields   Editor "菜单进行字段编辑。设置完此属性后,实际上就相当于定义了表的结构;如果想装入已有的数据表的结构和数据,可通过单击右键选择弹出菜单中的 "Assign   Local   Data "菜单,从弹出对话框中选取当前窗体中已与数据库连接好的数据集控件名称即可(当前窗体中必须已放置好要套用的数据集控件并打开激活)。

  使用注意:
  对于自定义的字段名表,该属性编辑完后,该控件仍然无法打开。必须右键单击该控件,选择弹出菜单中的 "Create   DataSet "菜单,让该控件以上述编辑的字段列表为依据,创建数据集后,才能够被激活打开和使用。否则,会出现类
 "ClientDataSet1:   Missing   data   provider   or   data   packet. "的错误(包括在运行期,运行期可调用该控件的CreateDataSet方法,从而动态定义字段和表)。
2).FileName属性
  说明:数据存储文件的名称。
  因该控件是基于文件型的数据操作控件,因此,必须指定所操作的数据文件名称(默认扩展名称.cds),从而打开和激活该控件,进而进行数据编辑。
  例1:利用此属性打开指定的.cds文件
var
Path:   string;
begin
 Path   :=   ExtractFilePath(Application.ExeName);   //取得可执行文件路径
 CDataSet1.FileName   :=   Path   +   'test.cds ';
 CDataSet1.Open;
end;   
  3).CreateDataSet方法
  说明:该方法以FieldDefs中的字段名表为结构建立数据集,常用来进行动态定义表。
  例2:动态创建一具有姓名和年龄两个字段的数据集。
//创建字段名表
CDataSet.FieldDefs.Clear;
with   CDataSet.FieldDefs.AddFieldDef   do
begin
 Name   :=   'Name ';
 Size   :=   10;
 DataType   :=   ftString;
end;
with   CDataSet.FieldDefs.AddFieldDef   do
begin
 Name   :=   'Age ';
 DataType   :=   ftInteger;
end;
 //动态创建数据集
 CDataSet.CreateDataSet;
 //激活和打开该数据集
 CDataSet.Open;   
  4).Open方法
  说明:   打开和激活数据集控件,从而进行数据编辑。
  a.   如果指定了FileName属性,则直接用Open方法即可打开和激活该控件,见例1。
  b.   如果未指定FileName属性,可使用例2方法动态创建和打开数据集,进而操作数据。
  5).LoadFromFile和SaveToFile   
  说明:从文件中装入表结构和数据以及存储数据到文件。该方法类似于Word中的打开新文件和另存为的功能。
  例3:将数据集的数据存储到指定文件中
CDataSet.SaveToFile( 'c:\windows\desktop\test.cds ');   
  6).First(到首),Prior(向前),Next(向后),Last(到尾),Edit(编辑),CanCel(取消编辑),Post(保存),Insert(插入记录),Append(添加记录),Delete(删除),Refresh(数据刷新)等数据集常用方法

  说明:当指定了FileName属性时,其Post方法可将数据存入指定的文件中,类似其SaveToFile方法;如果未指定存储文件名,则Post方法只将数据存储在RAM中。其它方法,同一般数据集控件使用方法,略。
  7).Filter,   Filtered:   过滤筛选属性
  说明:用于筛选指定条件的记录,用法同一般数据集控件,略。
  例4:在已经激活打开的数据集中筛选性别为男性的记录
CDataSet.Close;
CDataSet.Filter   :=   '性别= ' ' '   +   '男 '   +   ' ' ' ';
CDataSet.Filtered   :=   True;
CDataSet.Open;   

  2.使用TClientDataSet控件的应用程序发布的注意事项:
  如前所述,使用TClientDataSet控件的程序发布时不需要任何数据库驱动程序,大大节省了安装文件的大小。但是,在发布程序时别忘了将Windows系统目录下midas.dll(257KB)与应用程序一起发布(运行必须),否则,程序仍然无法正常运行。

2012-02-19 12:59
cymjx
Rank: 2
等 级:论坛游民
帖 子:74
专家分:29
注 册:2010-11-9
收藏
得分:0 
谢谢qingfameng,我先试一下。
2012-02-19 13:09
cymjx
Rank: 2
等 级:论坛游民
帖 子:74
专家分:29
注 册:2010-11-9
收藏
得分:0 
转换成xls格式后,只有三个字段:序号,姓名,身份证编号
2012-02-20 11:48
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:14 
以下是引用cymjx在2012-2-19 10:52:35的发言:

本人在工作中常遇到一些*.cds的数据,需要转换为*.xls才能在VF中处理,我想问一下各位老师能否用VFP6.0编程的方法来实现将*.cds格式转换为*.xls?
在此先谢谢啦!
cds是什么样的文件?

只求每天有一丁点儿的进步就可以了
2012-02-20 12:39
zzzzz513
Rank: 2
等 级:禁止发言
帖 子:14
专家分:19
注 册:2012-1-21
收藏
得分:14 
提示: 作者被禁止或删除 内容自动屏蔽
2012-02-20 14:10
软件服务
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:344
专家分:736
注 册:2011-12-23
收藏
得分:14 
未试过,是否可以用ODBC
2012-02-20 14:57
apple0072011
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:249
专家分:989
注 册:2011-8-17
收藏
得分:14 
没试过,把它当作低级文件打开可以吗?

天道酬勤
2012-02-22 16:07
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:14 
沒用的,不知道數據結構的協議和解釋方式,就無法知道那是什麼。讀那些數據沒有任何困難,困難是你不知道每個字節的數據代表什麼,整個數據結構如何建立。不同的軟件有自己不同的管理數據的方式,你必須熟悉這個軟件的設計才行,要麼它自己提供解讀程序(那個必須附帶的.dll就是了),要麼它公開數據結構(這幾乎是不可能的事)。ODBC也是調用那個.dll解讀數據的,只能像前面資料介紹那樣去做。Delphi的兼容性其實並不好,只是它原先的數據格式就是這樣,那也沒辦法。

授人以渔,不授人以鱼。
2012-02-22 16:24
快速回复:是否可以用编程的方法将*.cds格式转换为*.xls?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017376 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved