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

2008-02-23 05:24:07来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

假如您要在应用程式中处理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;

} 



标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: C 箴言:避免覆盖通过继承得到的名字

下一篇: C 箴言:接口继承和实现继承

热门词条
热门标签