哪位大侠知道.NET 生成 WORD 文档呀。帮帮忙,在线等。

sklkitty 2009-12-31 02:29:02
哪位大侠知道 或 有 .NET 生成 WORD 文档 的例子呀。
本人在做一个在线组卷的功能,要点按钮把页面上的试题 生成word 文档 并可以下载下来...
可是在百度里搜了许多的资料, 都不行呀。 请教哪位大侠帮个忙..在线等答案..


哪位好心人,帮帮我吧. 急呀...
...全文
117 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
vip__888 2010-01-04
  • 打赏
  • 举报
回复
无天 2010-01-04
  • 打赏
  • 举报
回复
LZ可以用.NET里面相关的名字空间读写office文档。
以前我写过NET生成EXCEL文档的程序。
按照一定的格式写文件就行了。这方面的资料你可以google一下,网上蛮多的。
你可以直接在csdn上搜索的,我记得当初也是在CSDN上搜索到的。
sklkitty 2010-01-04
  • 打赏
  • 举报
回复
如何在asp.net里面用代码实现将网页内容生成为word并可以下载(网页上有一按钮,点击按钮 生成word文档并可以下载)??????


请大侠们帮帮忙。。。



sklkitty 2010-01-04
  • 打赏
  • 举报
回复
OH . 没人呀。。。。
大侠们都去哪了呀。
sklkitty 2010-01-03
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 wly0502 的回复:]
用Telerik里边有生成Word和Excel的代码
[/Quote]

你说的Telerik 我不懂呀,??

还是没解决了这个问题呀。


请大侠们多多指点一下呀。
wly0502 2010-01-02
  • 打赏
  • 举报
回复
用Telerik里边有生成Word和Excel的代码
ganganba 2010-01-02
  • 打赏
  • 举报
回复
学习啦!
sklkitty 2010-01-01
  • 打赏
  • 举报
回复
感谢楼上提供的信息。
我试试..
sklkitty 2009-12-31
  • 打赏
  • 举报
回复
谢谢楼上。
kexin520 2009-12-31
  • 打赏
  • 举报
回复
虽然没用过,但是可以提供一下帮助,呵呵,你去看看吧!
http://www.dwww.cn/News/2008-6/20086101815467381.shtml
sklkitty 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 crazyleo814 的回复:]
用Telerik里边有生成Word和Excel的代码
[/Quote]


Telerik这是一个什么网站?没听过呀.能说清楚点么?
crazyleo814 2009-12-31
  • 打赏
  • 举报
回复
用Telerik里边有生成Word和Excel的代码
sklkitty 2009-12-31
  • 打赏
  • 举报
回复
我在网上查看了一些资料,好像没这么简单吧..

嘿嘿。。
sklkitty 2009-12-31
  • 打赏
  • 举报
回复
感谢谢楼上,我试试。

我用的字符串显示数据的,还有其他的方法么 。。


mngzilin 2009-12-31
  • 打赏
  • 举报
回复
你直接粘贴到页面测试即可:

前台html:
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />

后台cs:
    public override void VerifyRenderingInServerForm(Control control)
{
base.VerifyRenderingInServerForm(control);
}

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.Add("中文");
dt.Columns.Add("englsih");
dt.Columns.Add("id",typeof(string));
dt.Rows.Add("行不行啊", "sdasfsa","'12121252151251251");
dt.Rows.Add("行不行啊", "sdasfsa", "12121252151251251");
dt.Rows.Add("行不行啊", "sdasfsa", "12121252151251251");
dt.Rows.Add("行不行啊", "sdasfsa", "12121252151251251");
dt.Rows.Add("行不行啊", "sdasfsa", "12121252151251251");

GridView1.DataSource = dt;
GridView1.DataBind();
}
}
public override void VerifyRenderingInServerForm(Control control)
{
//base.VerifyRenderingInServerForm(control);
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Clear();
Response.Buffer = true;
Response.Charset = "GB2312";
Response.AppendHeader("Content-Disposition", "attachment;filename=out.doc");
Response.ContentType = "application/ms-word";
this.EnableViewState = false;
System.IO.StringWriter swOut = new System.IO.StringWriter();
HtmlTextWriter hTw = new HtmlTextWriter(swOut);
GridView1.RenderControl(hTw);
Response.Write(swOut.ToString());
Response.End();
}
sklkitty 2009-12-31
  • 打赏
  • 举报
回复
感谢楼上的回答,有具体的可以 运行 生成WORLD 文档 的 实例吗?


有的话,发到我邮箱里把,sk.ling@163.com


十分感谢.
zzxap 2009-12-31
  • 打赏
  • 举报
回复
http://topic.csdn.net/t/20050517/14/4013501.html
zzxap 2009-12-31
  • 打赏
  • 举报
回复
private void Button13_Click(object sender, System.EventArgs e)
{
this.Datagrid4.Visible=true;
Response.Clear();
Response.Buffer= true;
Response.Charset="GB2312";
Response.AppendHeader("Content-Disposition","attachment;filename=File1.DOC");
Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");
Response.ContentType = "application/ms-word";
this.Datagrid4.EnableViewState = false;
System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter (oStringWriter);
this.Datagrid4.RenderControl(oHtmlTextWriter);
Response.Write(oStringWriter.ToString());
Response.End();
}
在做ASP.NET项目时,会经常遇到要导出文件的问题,如将DataGrid中的数据导出到excel文件等,经常使用的是Office中的OWC组件,这个组件提供的功能很强大,在一般的项目中都可以满足当前的需要.但是这个功能强大的组件使用起来却不是很方便,不但有版本的问题,而且代码量也相对比较大.如果要利用Respone对象和相关的IO,也可以实现到处excel/word等文件,而且使用方便.
代码如下:
System.IO.StringWriter SW = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter HTW=new System.Web.UI.HtmlTextWriter(SW);
Page.RenderControl(HTW);
//Page为要导出的对象,当前是Page,如果是DataGrid,DataList等都可以
Response.Buffer=true;
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "Response.ContentType";
//Response.ContentType是输出流的 HTTP MIME 类型
//Response.ContentType --- word文件
//application/vnd.ms-excel --- excel文件
//
Response.Charset="utf-8";
Response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-8");
Response.AddHeader("Content-Disposition", "attachment;filename=XXX.doc");
//attachment --- 作为附件下载
//inline --- 在线打开
//filename如过是中文,则可以用HttpUtility.UrlEncode(fileName,System.Text.Encoding.UTF8)
//进行进行编码,以解决文件名乱码的问题
Response.Write(SW.ToString());
Response.Flush();
Response.Close();


这样即可以将当前的页面导出成一个Word文件.同样原理要将DataGrid,DataList等中的内容导出为Word或Excel等类型的文件,那么只需要稍做修改代码即可.
OK了,这样比用OWC组件方便多了,但也有个小问题,那就是导出的文件从文件格式上来说不是"真正"Word或Excel类型的文件,但用Office照样能打开,没什么区别,用户是看不出来的,也不会去理会这样的事情~~~

13,347

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET技术前瞻
社区管理员
  • .NET技术前瞻社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧