ASP.NET(C#):如何利用word模板dot文件生成报表。
ASP.NET利用dot模板生成Word文档代码,假定有一个模板文件位于网站Mywebsite/templates/a.dot,现在需要利用Word.ApplicationClass和Word.Document类来生成一个word文档。
关键代码如下: //初始化生成word文档需要的信息 Word.Application appWord =null; Word.Document doc = null; try { appWord = new Word.ApplicationClass(); appWord.Visible = false; object objTrue = true; object objFalse = false; object objTemplate = Server.MapPath(@"templates\a.dot");//模板路径 object objDocType = Word.WdDocumentType.wdTypeDocument; doc = appWord.Documents.Add(ref objTemplate, ref objFalse, ref objDocType, ref objTrue); //第一步生成word文档 //定义书签变量 object obDD_Name = "DD_Name";//姓 名 object obDD_Sex = "DD_Sex";//性 别 object obDD_Age = "DD_Age";//年龄 object obDD_Birthday = "DD_Birthday"; //出生年月 object obDD_Nation = "DD_Nation"; //民 族 object obDD_Native = "DD_Native"; //籍 贯 //第二步 读取数据,填充数据集 SqlDataReader dr = XXXXX;//读取出来的数据集 //第三步 给书签赋值 //给书签赋值 doc.Bookmarks.get_Item(ref obDD_Name).Range.Text = dr["appliername"].ToString(); //姓 名 doc.Bookmarks.get_Item(ref obDD_Sex).Range.Text = getCodeFullNameStd("性别", dr["Sex"].ToString());//性 别 doc.Bookmarks.get_Item(ref obDD_Age).Range.Text = Convert.ToString(DateTime.Now.Year - ((DateTime)dr["Birthday"]).Year);//年龄 . //第四步 生成word object filename = Server.MapPath("file") + "\\" + "XXXXXXXXXX情况表" +".doc"; object miss = System.Reflection.Missing.Value; doc.SaveAs(ref filename, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss); object missingValue = Type.Missing; object doNotSaveChanges = Word.WdSaveOptions.wdDoNotSaveChanges; doc.Close(ref doNotSaveChanges, ref missingValue, ref missingValue); appWord.Application.Quit(ref miss, ref miss, ref miss); doc = null; appWord = null; } catch (System.Exception e) { //捕捉异常,如果出现异常则清空实例,退出word,同时释放资源 string aa = e.ToString(); object miss = System.Reflection.Missing.Value; object missingValue = Type.Missing; object doNotSaveChanges = Word.WdSaveOptions.wdDoNotSaveChanges; doc.Close(ref doNotSaveChanges, ref missingValue, ref missingValue); appWord.Application.Quit(ref miss, ref miss, ref miss); doc = null; appWord = null; }
asp.net 如何调用客户端word程序打开服务器上的word文档进行查看
用word里面的邮件合并功能,首先:视图——工具栏——邮件合并,点出邮件合并工具栏,然后在工具栏上点击“打开数据源”,把你那个excel文件导入进来,把光标定位在姓名栏——插入域——姓名——插入——关闭,其他各科成绩也是定位在相应的科目,然后重复上面的工作,不同的是插入域不是“姓名”,而是相应各科成绩(例如:物理,数学……)。
全部插入完之后,查看合并数据,如果没有问题的话,就合并到新文档,把新文档打印出来就可以了。
怎么做一个word模板,用java调用打印功能
1、首先新建一个空白文档,并另存为“Normal.dotm(Word2007及以后版本)Normal.dot(Word2003-2007版本)”。
2、进行需要的模板设置,对字体、段落、页眉页脚,页面边距等进行设置。
3、对字体、段落的设置:在空白的新文档中,右击进行对字体的设置,在设置完成后,点击“默认”按钮。
4、对页眉页脚,页面边距:同样在菜单栏,选择插入"页眉页脚"进行设置,设置后点击“默认”按钮,并同时设置“页面边距”并点击“默认”按钮。
5、在全面进行模板设置后,需要保存,在操作中会出现对一些“默认的设置”如果所示,要选择“是”,“你准备将默认的字体更改为.....,是否将此更改应用于所有基于NORMAL模板的新文档?”6、把刚才保存的模板,复制起来,在打开“C:\Users\Administrator\AppData\Roaming\Microsoft\Templates”替换原有的Normal.dotm或Normal.dot,关闭。
7、测试效果:打开一个Word文档,并按下“CTRL+N”新建一个空白文档,任意输入内容,可以看到是刚才设置的模板。
java实现调用默认打印机打印文档(以D盘zhidao.txt文档为例),代码如下:import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import javax.print.Doc;import javax.print.DocFlavor;import javax.print.DocPrintJob;import javax.print.PrintException;import javax.print.PrintService;import javax.print.PrintServiceLookup;import javax.print.ServiceUI;import javax.print.SimpleDoc;import javax.print.attribute.DocAttributeSet;import javax.print.attribute.HashDocAttributeSet;import javax.print.attribute.HashPrintRequestAttributeSet;import javax.print.attribute.PrintRequestAttributeSet;/** * 调用打印机功能 * @author Administrator**/public class PrintDemoII {public static void main(String[] args) {DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();PrintService []pservices = PrintServiceLookup.lookupPrintServices(flavor, aset);PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();PrintService service = ServiceUI.printDialog(null, 200, 200, pservices, defaultService, flavor, aset);if(service != null){try {DocPrintJob pj =service.createPrintJob();FileInputStream fis = new FileInputStream("D:"+ File.separator +"zhidao.txt");//打印D盘zhidao.txt文档。
DocAttributeSet das = new HashDocAttributeSet();Doc doc = new SimpleDoc(fis, flavor, das);pj.print(doc, aset);} catch (FileNotFoundException fe) {fe.printStackTrace();} catch (PrintException e) {e.printStackTrace();}}else {System.out.println("打印失败");}}}
java 调用word模板实现循环套打生成word文档
解决方法:工程中-右击引用-添加-COM-选择microsoft excel。
拓展:1、C语言是一门通用计算机编程语言,应用广泛。
C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
2、尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
3、二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言订定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。
.net如何在WinForm中使用OpenXML对office Word 进行打开模版,修...
这个你打字不要大写小写一起来。
。
。
我遇到过这样的问题,首先你用的是什么word,03还是07还是10.。
。
如果是03一般不会出现这样的问题。
如果想添加功能或者是修复word可以再点击原来你安装的程序。
我用的是07word和win7环境下有问题,03系统和03word没问题的尴尬。
。
无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Application”。
建议换下环境看看,或换个word版本。
转载请注明出处51数据库 » .net调用word模板