113E博章

       登录 /注册
首页 一算子网 发布
分类 :c++/vc

C+程序中导出Word文档的简易方法

[ 2007-6-10 23:56:00 | 发表者 : zihe ]

  如果您要在应用程序中处理word文档,可以参考msdn. lori turner. automating microsoft office 97 and office 2000,该文内容详细全面,但是要在c++程序中导出word文档,按照文中的方法来处理是很麻烦的,特别是需要填写的参数太多,所以我们考虑生成正确的vb脚本,然后执行生成word文档的操作,这个方法的优点在于:一方面可以少填写参数;另一方面可以使用在word中录制的宏脚本,而只需作少量的修改。我们给出了一些简单的函数来方便生成word文档(主要是简单的表格)和直接运行内存中的vb脚本,此外,还附带了一个小小的例子。
//创建word文档 std::string create_new(); //保存word文档 std::string close_save(const char* filename); //selection 往下移,以继续生成下一元素 std::string move_down(); //插入分段符 std::string put_paragraph(); //添加标题 std::string put_title(const char* title, const char* title_type="标题 1", int align=align_left); //添加“标题1” std::string put_title1(const char* title, int align=align_center); //添加“标题2” std::string put_title2(const char* title, int align=align_left); //添加“标题3” std::string put_title3(const char* title, int align=align_left); //添加红色警告信息 std::string add_warning_msg(const char* msg="无数据"); //添加表格的一行数据(不用此函数) std::string add_grid_ln(const char* line); //添加表格 std::string put_grid(const char* content); //运行脚本 extern "c" void runscript(const char* script_str);   下面是一个小例子,我们期望它在您的计算机上能够很好的运行,程序将生成一个word文档,路径位于c:\test.doc,计算机上需要安装word xp。 int main(int argc, char* argv[]) { ostringstream ostr; ostr<<create_new(); ostr<<put_title1("统计结果"); ostr<<put_title2("统计子项详细信息"); std::string str_buffer; read_file_as_grid_content("tab.txt", str_buffer); ostr<<put_paragraph(); ostr<<put_grid(str_buffer.c_str()); ostr<<close_save("c:\\test.doc"); //输出到文件看看vb脚本的内容 /* std::ofstream ofile; ofile.open("c:\\temp.vbs"); ofile<<ostr.str().c_str(); ofile.close(); */ //beginwaitcursor(); runscript( ostr.str().c_str() );//运行生成的脚本 //endwaitcursor(); return 0; }  



上一篇:用C+实现跨平台游戏开发之Irrlicht引擎   
下一篇:C+面向对象程序设计的重要概念

浏览模式 : 显示全部 | 评论 : 0 | 排序 | 浏览 : 141

我要发表文章
回复标题:  
    Email :
* 请输入验证码
 
统计数据
文章数量 : 300297
评论次数 : 460
访问次数 : 19293859
在线人数 : 2089

附近文章
  • VC+编程实现对火焰的计算...
  • 简单SNMP管理程序的VC+代...
  • 用C+实现跨平台游戏开发之...
  • C+箴言:避免覆盖通过继承...
  • 用C+实现跨平台游戏开发之...
  • C+面向对象程序设计的重要...
  • C+箴言:接口继承和实现继...
  • C+跨平台游戏开发之ClanL...
  • C+中extern “C”含义深层...
  • 为C+程序添加文件保存加载...
热门文章
  • 如...
  • Socket编程中select()的妙...
  • 如何在DLL中创建窗体(对话...
  • 重载赋值运算符 C+/VC
  • 展现TRACE之威力 C+/VC
  • ·用豪杰大眼睛制作照片v...
  • 一個簡單的錄音放音程序 ...
  • 用Socket接口实现网络异步...
  • MFC动态创建控件的消息处...
  • 实现服务器端的多线程SOC...
最新文章
  • 股票技术不准了
  • 2009年元旦放假安排
  • 三国 旬彧VS诸葛亮
  • ASR浮筹比例
  • 杨百万投资股票的三大秘诀...
最近评论
  • xueshanfh
  • 匿名
  • 匿名
  • 匿名
  • 匿名
  • 匿名Martha Jack
  • 匿名
  • Tom Moddy
  • 匿名Jimmy Adams
  • 匿名
 
 

Copyright (C) 一算子网 2006-2008, All Rights Reserved 京ICP备06020154号
服务QQ: 有问题请留言 留言邮箱pinhu530@sohu.com