批量打印Word文档并记录之添加需要打印的Word文档信息到listview里

写这款小软件的原因:由于寝室买了一台打印机,平常来寝室打印的人越来越多,在网上找了很久关于批量打印的软件,但总是有一些限制,还有一个最大的问题是不能记录打印记录(没记录我没法向别人收钱啊)。靠别人还不如靠自己。

才步入大二不久,所以自己的知识储备有限,介绍的比较模糊,望原谅;说实话自己接触c#不到两个星期,尝试过用c++写,但在加载office的外部库时总是出错,所以尝试用c#写了这个软件。

我用的是visul studio 2012

1.创建windows窗口应用

2.添加com中的Microsoft.Office.Interop.Excel和Microsoft.Office.Interop.Word库文件(com在添加引用中可以看到)本篇中不涉及到office的操作所以不会用到与其相关函数

3.添加一个listview   一个 button  一个folderBrowserDialog控件

4.在窗口构造函数中初始化listview:添加列标题内容为你要显示的Word文档的信息

private void Form1_Load(object sender, EventArgs e){allpages = 0;//打印Word文档的页数初始值
           //参数说明:列标题名,所占用的宽度,对其方式listView1.Columns.Add("文件名",200,HorizontalAlignment.Left);listView1.Columns.Add("路径",150, HorizontalAlignment.Left);listView1.Columns.Add("获取时间", 80, HorizontalAlignment.Left);listView1.Columns.Add("页数", 50, HorizontalAlignment.Left);listView1.Columns.Add("状态", 80, HorizontalAlignment.Left);listView1.Columns.Add("打印时间", 80, HorizontalAlignment.Left);
         //让其在listview控件上显示listView1.View = View.Details;}

5.将Word信息显示在listview中
 private void button1_Click(object sender, EventArgs e){filepathname = null;progressBar1.Visible = true;if (folderBrowserDialog1.ShowDialog() == DialogResult.OK){filepathname = folderBrowserDialog1.SelectedPath;//获取将打开的路径}if (filepathname == null){ MessageBox.Show("添加的文件为空"); return; }DirectoryInfo wenjianja = null; wenjianja=new DirectoryInfo(filepathname);FileSystemInfo[] allpath = wenjianja.GetFileSystemInfos();allword = allword +allpath.Length;progressBar1.Maximum = allpath.Length;progressBar1.Minimum = 0;label1.Visible = true;label1.Text = "总共有"+allword.ToString() + "个文档";for (int i = 0; i < allpath.Length; i++){try{//创建一行listviewListViewItem a = new ListViewItem();a.Text = filepathname+@"\"+allpath[i].Name;//文件//文件的 字数// a.SubItems.Add(wordDoc.ComputeStatistics(MSWord.WdStatistic.wdStatisticWords, ref Nothing).ToString());//文件大小//a.SubItems.Add((File.Open(filepathname.ToString() + @"\" + allpath[i].Name.ToString(), FileMode.Open).Length / 1024).ToString());a.SubItems.Add(filepathname);//路径             //int pages = wordDoc.ComputeStatistics(MSWord.WdStatistic.wdStatisticPages, ref Nothing);//a.SubItems.Add(pages.ToString());//页数a.SubItems.Add(allpath[i].LastWriteTime.ToShortDateString());//获取时间            this.listView1.Items.Add(a);//((Microsoft.Office.Interop.Word._Document)wordDoc).Close(ref Nothing, ref Nothing, ref Nothing);// ((Microsoft.Office.Interop.Word._Application)wordApp).Quit();}catch (Exception a){ MessageBox.Show(a.Message, "错误提示"); continue; }progressBar1.Value = i + 1;}//ListViewItem filepath = new ListViewItem(filepathname);//listView1.Add(filepath);//textBox1.AppendText("总共有" + allpages + "页");label1.Text = "总共有" + allword.ToString() + "个文档";//隐藏控件            progressBar1.Visible = false;}



本篇文章只实现了批量添加的功能
以后将继续发出将更新其它功能
												

批量打印Word文档并记录(一)相关推荐

  1. python批量提取word指定内容_使用python批量读取word文档并整理关键信息到excel表格的实例...

    目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下 ...

  2. java打印word_Java jacob调用打印机打印word文档

    前面说了Java如何生成复杂的Word文档,今年记录下Java如何调用打印机打印word文档. 起初用的是自带的PrintJob,但是系统提供的打印机制并不成熟完整.网上的代码也是千篇一律,在我的打印 ...

  3. 【Python】批量导出word文档中的图片、嵌入式文件

    Python 批量导出word文档中的图片.嵌入式文件 需求 学生试卷中的题目有要提交截图的,也有要提交文件的,为了方便学生考试,允许单独交或者嵌入Word中提交,那么事后如何整理学生的答案?单独提交 ...

  4. Java 使用jacob打印word文档

    , 记录并整理自己网上查阅的资料,网上的代码感觉始终有点不全,一些操作没有完全关闭,比如打开的Word没有关闭,一直占用这系统资源:由于网上很多实例都是讲解打印Excel文档的,微软的MSDN上面的具 ...

  5. java word打印_如何通过Java打印Word文档

    本文将介绍如何使用Java程序来打印Word文档.打印可分为两种方式:一是打印到物理打印机:二是打印到虚拟打印机. 使用工具:Spire.Doc for Java 测试环境: ●Intellij Id ...

  6. java poi打印word_Java 打印Word文档

    本文介绍如何在Java程序中通过物理打印机和虚拟打印机来打印Word文档的方法.文中使用了类库Spire.Doc for Java,可通过官网下载jar文件并导入程序或者直接通过maven仓库安装导入 ...

  7. 用Word转换向导批量转换Word文档(转)

    用Word转换向导批量转换Word文档(转)     目前,我校所在地区教育系统上下级之间文件材料的下达和上报都实现了网络传输.为了提高办公效率,主管教育部门要求这些材料一律使用纯文本格式.而由于排版 ...

  8. 办公室小姐姐的福利!用Python批量提取word文档中的表格和图片内容

    点上方"菜鸟学Python",选择"星标" 第491篇原创干货,第一时间送达 最近有许多小伙伴想要一些自动化办公的福利小程序,今天就满足大家的需求.日常的办公过 ...

  9. 如何批量将 Word 文档转为 HTML 格式

    概要:HTML 的全称为超文本标记语言,是一种标记语言.我们可以将所需要表达的信息按某种规则写成 HTML 文件,这样可以通过专用的软件来识别,比如常用的浏览器.这些软件可以将这些 HTML 文件&q ...

  10. 批量删除 Word 文档中的所有图片

    概要:我们在处理 Word 文档的时候,里面会包含很多图片.我们能否一键删除这些 Word 文档中的图片呢?这样的话我们可以保持我们的 Word 文档是没有图片的.如果能够批量删除 Word 中的图片 ...

最新文章

  1. 基于标准C语言的数字图像处理基本框架(转)
  2. iOS—OC——C——野指针
  3. suid shell
  4. DDoS攻击惯犯图鉴
  5. wx-charts 微信小程序图表插件
  6. 使用鸿蒙系统的家电厂商,除了华为外!谁还会用鸿蒙系统?米OV们不可能:这些巨头才会用...
  7. Python 进阶——从 list 到 NumPy 的多维数组
  8. Xcode C++ and Objective-C refactoring
  9. 收费系统java源代码_java网吧计费系统源代码
  10. python随机生成三位数字_python3 随机生成数字
  11. 泊松过程2 | 泊松过程扩展
  12. Android 函数响应式编程(RxJava3)
  13. 大数据工程师面试考题
  14. Gitlab在线安装、离线安装、搭建、使用等详细介绍,不能再详细了……
  15. 计算机专业对于未来的规划,对所学专业的认识及对未来的规划.doc
  16. 陀螺财经研究院郭润华:2019年将迎来区块链真正成熟的井喷时代
  17. 任正非谈“咖啡杯”文化
  18. linux字体渲染包,CentOS 7用了本站一条命令字体渲染包前后的字体效果展示
  19. AdaCliP: Adaptive Clipping for Private SGD
  20. 埃森哲杯第十六届上海大学程序设计联赛春季赛暨上海高校金马五校赛A题Wasserstein Distance

热门文章

  1. Python数据处理Tips日期、时间数据处理方法汇总
  2. 【C++设计模式】抽象工厂模式
  3. linux蓝牙安装程序,Linux 端蓝牙调试工具
  4. php 485通讯协议 编程,485通讯协议程序怎么写(51单片机的485通信程序案例)
  5. 2、那智机器人时序基板的TBEX1、TBEX2连接
  6. 消息队列以及非常牛的kafka
  7. Node.js连接数据库等操作
  8. matlab两个运动同时进行,多体运动的matlab动画演示
  9. JDK下载安装及环境变量配置的图文教程(详解)
  10. Vyos防火墙功能配置