asp生成word文档
今天在处理一个在线申请功能时候,需要生成word文档。在网上找了些资料学习,终于成功了。下面是个简单的例子。其中程序包括index.htm,createdoc.asp。在之前你需要做一个word模板,并另存为web页。然后则是处理web页的代码:
1、用“记事本”的方式打开你的web页,并复制所有的代码。
2、新建一个word, 将上一步复制好的代码粘贴进来,然后按住ctrl+F,点“替换”标签,点“高级”,查找内容里填“特殊字符”的“段落标记”,替换为填“特殊字符”的“不间断空格”,全部替换即可。然后复制全部的字符(ctrl+a,ctrl+c即可)。
3、使用dreamweaver打开createdoc.asp,把东西复制在myString=""的两个引号之间。选择上刚你复制过来的所有字符,ctrl+F,查找范围选择为“所选文字”,查找内容填一个双引号",替换为填两个双引号"",全部替换即可。(这样是因为需要输出双引号。在asp的输出中两个双引号等于输出一个双引号,起到了转义的效果。)
说明:网上查询的资料是在word中替换好了双引号,可我好几次都出现了错误未能成功,所以干脆到
dreamweaver中去替换)
注:打开生成的这个word文档,如果发现是以“web视图”的方式打开的,只要在你的myString里找,在后面加上Print,那么就会以“页面视图”打开了。
附:
word文档模板:
index.htm:
/p>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
无标题文档姓名 | |
个人资料 |
createdoc.asp:
myname=request.Form("myname")
mycontent=request.Form("mycontent")
dim fso,myfile
set fso=Server.CreateObject("Scripting.FileSystemObject")
sfilename=myname&".doc"
set myfile=fso.CreateTextFile(Server.MapPath(".")&"\word"&sfilename,True)
mystring="
姓名 姓名 | $name$ |
个人资料 | $content$ |
mystring=replace(mystring,"$name$",myname) '$name$为word文档模板中需要输入的内容之一
mystring=replace(mystring,"$content$",mycontent)'$content$为word文档模板中需要输入的内容之一
myfile.WriteLine(mystring)
myfile.close
set myfile=nothing
set fso=nothing
%>
相关文章: