如何让ASP动态生成WORD文件
一般来讲,生成word最好是格式固定的,只是内容有变动的比较适用,我以前做过,方法是这样的,先在word中排好版,比如哪些地方填什么内容,你用文字标明,然后另存为html文档,打开这个html文档查看源文件,你只需要在asp中更改你作好标记的内容部分,其他部分不变,最后将更改过的html内容文档存为doc后缀文档即可。
这个方法对于有大量数据的就太慢了,也非常占用服务器资源,而且打开的word文件始终为web版式视图,不是页面视图,到是你要注意切换!
Word中模板的创建方法有哪些呢?
当Word自带的模板不能满足我们的需要时,我们可以自己建立模板,一般情况有两种创建模板的方法。
一种是,选择“文件”菜单下的“新建”选项,在弹出的对话框中选中“模板”项,在其中加入模板所需信息,然后保存。
另一种方法是,打开一篇包含可以重复使用信息的文档,并将该文档另存为文档模板。
设置初始文档 当每次进入Word时,系统都会自动新建一个空白文档,并分配一个名称为“文档1”的文档。
其实大多数情况下,其默认设置比如说字体、字号、纸型等都不满足我们的需要。
有没有一种方法让其打开的就是我们经常使用的设置呢,答案是肯定的,可以利用Word的模板功能来实现。
其实我们新建一个文档时,实际上是打开了一个名为“normal.doc”的文件。
该文件的位置一般位于:C:\WindowsApplication \Data\Microsoft\Templates文件夹下,具体操作方法如下:打开“normal.doc”文档,将各项设置改成自己所需的样式,点击文件下拉菜单中的“另存为”,在“另存为”对话框中输入要保存的文件名,保存类型选择“文档模板”,单击“确定”就可以了。
以后每打开这一文件时,它的默认格式就是刚才设置的那样了。
带有“域”的模板 一个模板并不一定是自己使用,或许是一个公司的所有人使用,这样,并不是所有人都能看懂所有意思,在需要输入数据的地方加入一些提示信息一定会给使用者带来方便。
其实这是可以通过“域”来实现的,在提示用户的同时,还可以预先设置文字的字体、字号等。
具体的操作步骤如下:按下Ctrl+F9 组合键,插入一对标明域代码的花括号{}; 在花括号之间键入“MacroButton NoMacro [单击此处输入姓名]”; 对插入的域和文字进行必要的格式设置;在域上方单击鼠标右键,并选择“切换域代码”。
这样,当单击提示时提示就处于被选中状态,输入新的文字将替换提示信息。
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生成word思路的问题 40shenxian6
简单说下思路,说的不是很清楚, 先考虑下单一页面生成,这里用到fso,一般服务器都有. goaler="输出的内容是这里,可是是动态信息分页也在这里+1.htm">下一页" FolderPath = Server.MapPath("路径") Set fso = Server.CreateObject("Scripting.FileSystemObject") Set fout = fso.CreateTextFile(FolderPath&"\你所要生成的文件名.Js") //我这里生成的是js,你也可以生成htm或html 看你怎么想生成了 fout.WriteLine goaler fout.close 这样一个页面简单的生成就出来了,当然还有就是生成网页的同时要把数据写到数据库中.这些我就不说了. 下边就是分页生成 分页也和单页差不了多少,就是多生成几页,就是在 Set fout = fso.CreateTextFile(FolderPath&"\你所要生成的文件名.Js") 你所要生成的文件名.Js 不能用静态的而要用的用动态的.而且是代循环的 循环最上边那个代码时候加一个i=1,你所要生成的文件名.Js 然后循环到next时候i=i+1,这样循环几次就生成了几页,分页也是用到i这个变量 反正说起来真的比较麻烦 就说道这里,给你点思路,再到网上下载个静态生成的源代码研究一下,至少不至于看别人得代码优点郁闷 相信你有所收获
IIS下asp.net调用com组建操作和生成新的word文件问题
这个是可以实现的,WORD 转 HTML 就是按照WORD的排版,平移到 HTML上。
同时,HTML 转 WORD 也很方便的,只需要把HTML的样式,写入WORD即可。
这里需要注意,WORD 不支持DIV等标签,仅仅支持TABLE这些标签,写程序的时候注意样式和标签的改变哈。
可以用ASP后台生成HTML前台页面吗?具体代码怎么写
吧前台HTML的内容想象成一个 string字符串所谓的生成前台页面 就是生成这么一个字符串 再保存为文件当然前台页面内容的 这个字符串 可以有些内容是不变的这样一个包含占位符的预定义字符串就称之为模板比如 "{$title}hello word
如何实现网页上保存word文档在做一个网页,用asp技术,后台数
模板是一个用来创建文档的大概模型,一个模板一般包含的信息有:本的格式信息,样式,内容,宏按钮,自定义工具栏、宏、快捷键、自动图文集词条等。
Word默认情况下包含多种模板,选择“文件”菜单下的“新键”命令,就会弹出新键对话框,其中就是包含的各种模板,既包括许多中文模板,也包括英文向导模板。
转载请注明出处51数据库 » asp 模板生成word