前台
[csharp] view plain copy print?
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</div>
</form>
</body>
</html>
后台
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Microsoft.Office.Interop.Word; //注意要先引用
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
public void educeDoc(string FileName)
{
//清除反冲区的内容
Response.Clear();
//设置输出流的http字符集
Response.Charset = "gb2312";
//将一个HTTP头添加到输出流
Response.AddHeader("content-disposition", "attachment;filename=" + FileName);
//设置输出的HTTP MIME类型
Response.ContentType = "application/vnd.doc";
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append(@"<table border='1' >
<tr>
<td>123</td>
<td>456</td></tr>
<tr>
<td>678</td>
<td>890</td></tr>
<tr>
<td>222</td>
<td><img src='http://www.iteye.com/images/user-logo.gif?1324994303' alt='ourteam的博客'></td></tr>
</table>");
//把字符数组写入HTTP响应输出流
Response.Write(sb.ToString());
//发送完,关闭
Response.End();
}
protected void Button1_Click(object sender, EventArgs e)
{
educeDoc("1.doc");//最终输出的文件名就是 "1.doc"
}
}
转载自:http://blog.csdn.net/yenange/article/details/8858817