CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  数据库及相关技术

已经是第四个通宵了,问题还没有解决,希望有高手帮忙!

楼主cjchtree()2006-06-02 00:43:30 在 C++ Builder / 数据库及相关技术 提问

首先,我刚开始学习,基础不是很好,但是整个问题必须解决,因为这个作业很重要。  
  其次,我已在百度谷歌等很多网站查找过,没有能够找到答案。  
  第三,我业查过相关的资料,看过很多文章,但是问题还是没有能够解决,希望有高手能出手相助。谢谢了!  
  我的问题是这样的:  
  就用OleContainer嵌入word文档对象后,将这个word文档通过SaveToStream   和   LoadFromStream方法将整个word文档存储到AC数据库的Ole对象字段   现在能不能实现从数据库中把word文档的数据读出数据库,   导入到一个新开的word文档呢?  
  今天晚上第四个通宵,希望有高手帮忙。在线等!谢谢了! 问题点数:20、回复次数:19Top

1 楼cjchtree()回复于 2006-06-02 02:56:31 得分 0

等者CSDN上高手的出现....................Top

2 楼sfengnet(☆☆☆☆☆)回复于 2006-06-02 08:45:24 得分 0

你的说明是什么样的数据库,每个数据库的特性不是太一样的Top

3 楼jjwwang((空园歌独酌,春日赋闲居))回复于 2006-06-02 08:50:02 得分 0

AC数据库?  
  ACCESS数据库?Top

4 楼sfengnet(☆☆☆☆☆)回复于 2006-06-02 09:00:08 得分 20

一个简单例子    
   
  #include    
  #pragma   hdrstop    
   
  #include   "Unit1.h"    
  ---------------------------------------------------------------------------    
  #pragma   package(smart_init)    
  #pragma   resource   "*.dfm"    
  TForm1   *Form1;    
  ---------------------------------------------------------------------------    
  __fastcall   TForm1::TForm1(TComponent*   Owner)    
  :   TForm(Owner)    
  {    
  }    
  ---------------------------------------------------------------------------    
   
   
  void   __fastcall   TForm1::Button1Click(TObject   *Sender)    
  {    
  Variant   OLEObject;    
  AnsiString   dataword;    
  if(Trim(Edit1->Text)=="")    
  {    
  ShowMessage("请输入文件名");    
  return;    
  }    
  String   currentPath=GetCurrentDir()+"//"+Trim(Edit1->Text);    
  OLEObject=CreateOleObject("Word.Basic");    
  OLEObject.Exec(Procedure("FileNew"));    
  OLEObject.Exec(Procedure("EndOfDocument"));    
  ADOTable1->First();    
  while(ADOTable1->Eof!=True)    
  {    
  dataword=ADOTable1->FieldValues["工号"]+ADOTable1->FieldValues["姓名"]+ADOTable1->FieldValues["性别"]+ADOTable1->FieldValues["部门"];    
  OLEObject.Exec(Procedure("Insert")<   ADOTable1->Next();    
  }    
  OLEObject.Exec(Procedure("StartOfDocument"));    
  OLEObject.Exec(Procedure("FileSaveAs")<OLEObject.Exec(Procedure("FileClose")<<1);    
  ShowMessage("文件已经写入!");    
  }Top

5 楼cjchtree()回复于 2006-06-02 09:55:58 得分 0

用的是ACCESS数据库,感谢sfengnet,jjwwang(风归叶)的回答。  
  但是上面那个例子好像不是问题的答案,因为现在在数据库里面字段值是二进制文件。请大家继续帮忙,我自己也会努力的。Top

6 楼Shatty(西北游侠)回复于 2006-06-02 10:17:33 得分 0

ole又自己的一套数据类型,读出来的时候,做一下转换,com库里边提供了相应的转换函数.Top

7 楼cjchtree()回复于 2006-06-02 10:24:17 得分 0

能不能具体讲下,Shatty?   我不是很了解。给个思路也可以。Top

8 楼cjchtree()回复于 2006-06-02 10:24:45 得分 0

能不能具体讲下,Shatty?   我不是很了解。给个思路也可以。Top

9 楼myy()回复于 2006-06-02 12:20:16 得分 0

你留个eMail,我给你发个例子。Top

10 楼cjchtree()回复于 2006-06-02 13:24:42 得分 0

我的E-mail:cjchtree@163.com   先行谢过!Top

11 楼cjchtree()回复于 2006-06-02 23:16:41 得分 0

高手帮忙啊,十万火急!!!!!!!!!!!!!!!Top

12 楼cjchtree()回复于 2006-06-03 15:31:31 得分 0

myy你在吗?   一直给你发站内信息,希望你能收到。  
  其他的高手帮个忙啊,也许这个问题对你来说很简单,但是对我来说真的很难。我已经尝试了很多办法但是都不性,先谢谢大家了,我真的很急。Top

13 楼jbczj(人见人爱)回复于 2006-06-03 15:42:42 得分 0

笨呀你,通过一个临时文件过渡呀,保存的时候把文件名同时保存,系统会根据扩展名来调用相关的程序滴.Top

14 楼cjchtree()回复于 2006-06-03 16:06:52 得分 0

不是很懂jbczj的意思,你的意思是说先把内容放到OleContainer里面,然后保存文件?  
  我这边校园网很烂,打开这个页面很慢,但是一直在刷,等高手们来。Top

15 楼cjchtree()回复于 2006-06-04 00:03:38 得分 0

今天是第六天,没有人回答,只好自己直接将OleContainer里面的文件SaveToDocument成word文档,可是现在又遇到一个问题,如何把满足要求的数据放入OleContainer然后保存成文件呢?也就是要有Stream的连接。还有就是格式   最简单的换行就可以了。Top

16 楼cjchtree()回复于 2006-06-04 02:35:54 得分 0

CSDN的高手帮帮忙啊,真的是很急的问题。我自己解决不了,愿意出人民币(尽管没有我是穷人,但是没有办法)。Top

17 楼sncel(地狱情人-杨勇)回复于 2006-06-07 15:31:34 得分 0

这个应该很好解决的啊.Top

18 楼cjchtree()回复于 2006-06-07 17:19:03 得分 0

to:sncel(地狱情人-杨勇)   和所有的高手  
  如果你会能不能帮忙写个例程,不是我懒,只是刚开始学,又急用,没有办法。谢谢了,留下你的联系方法,我和你们联系。再次谢谢你么。Top

19 楼fengfeiwuwq(寒烟翠)回复于 2006-06-08 10:12:19 得分 0

二进制类型字段用TBlobField来解决,参见BCB的帮助文件,既然你已经通过LoadFromStream读入了文件流,为什么不会用SaveToFile方法直接保存成为Word文件呢?其他所有文件类型都是一样的操作方法,很简单的应用,不知道楼主是否说的这个问题?Top

相关问题

关键词

得分解答快速导航

  • 帖主:cjchtree
  • sfengnet

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo