我要把一次注册确认的结果表格,(点击保存按钮)保存成WORD文档中,请问如何实现????
解决方案 »
- javascript中输出服务器控件咋整 求助帖 标题要长《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《《
- 关于,进来帮我看看
- 关于datalist的item相同内容合并,紧急
- vs2008新建网站以默认服务器运行时无法显示页面,而在IIS里可以运行,真怪?
- System.Threading.Timer运行时间有10分钟限制?
- 超时时间已到。超时时间已到,但是尚未从池中获取连接!
- 客户端用javascript改变了控件的值,怎么可以保存状态?
- 给出一个url,如何获得该url中的控件列表
- 80分求DATALIST和REPEATER后台分页代码
- 超难度问题===在线等待
- 急请教:利用Timer、UpdatePanel局部刷新页面,客户端Browser占用内存不断增长
- 关于时间压缩的算法
/// 设置Word模板,word表格样式在此设置
/// </summary>
/// <param name="dsTr"></param>
/// <returns></returns>
protected string SetWordTemplate(string dsTr)
{
StringBuilder html = new StringBuilder();
html.Append("<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>");
html.Append("<html xmlns='http://www.w3.org/1999/xhtml'>");
html.Append("<html><head><title>测试word</title></head>");
html.Append("<body>");
//html.Append("<table cellpadding='0' cellspacing='0' border='1'>");
html.Append(dsTr);
//html.Append("</table>");
html.Append("</body>");
html.Append("</html>");
return html.ToString();
}
/// <summary>
/// 保存Word
/// </summary>
/// <param name="savePath"></param>
/// <param name="data"></param>
/// <returns></returns>
protected bool SaveWord(string savePath,string data)
{
try
{
using (StreamWriter sw = new StreamWriter(savePath,true, Encoding.Default))
{
sw.WriteLine(data);
sw.Close();
sw.Dispose();
}
return true;
}
catch
{
return false;
}
return false;
}
/// <summary>
/// 导入
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
//保存路径
string path = string.Format("{0}{1}", Application.StartupPath, "保存物理路径");
//多个表 这里的dataset需要换成从数据库查询出来的dataset
foreach(DataTable dt in new DataSet().Tables)
{
StringBuilder _tables = new StringBuilder();
for (int i = 0; i < dt.Rows.Count; i++ )
{
if (i == 0)
{
_tables.Append("<table cellpadding='0' cellspacing='0' border='1'>");
_tables.Append("<tr><td>表名字</td></tr>");
}
_tables.Append("<tr><td>" + i + "</td><td>" + i + "</td><td>" + i + "</td></tr>");
if (i == (dt.Rows.Count - 1))
_tables.Append("</table>");
}
SaveWord(path, this.SetWordTemplate(_tables.ToString()));
}
MessageBox.Show("生成成功!");
}
Microsoft.Office.Interop.Word.ApplicationClass app = new Microsoft.Office.Interop.Word.ApplicationClass();
Microsoft.Office.Interop.Word._Document Doc = app.Documents.Open(ref sFile, ref optional, ref docreadonly, ref optional, ref optional, ref optional, ref optional, ref optional, ref optional, ref optional, ref optional, ref visible, ref optional, ref optional, ref optional, ref optional);
if (Doc.Books.Exists("Name"))
{
object b1 = "Name";
Word.Book bk1 = Doc.Books.get_Item(ref b1);
bk1.Range.Text = p.Title;
}