服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - ASP.NET教程 - 比较简单的将数据信息导入wrod文档方案(C# for word)

比较简单的将数据信息导入wrod文档方案(C# for word)

2019-07-04 14:18ASP.NET之家 ASP.NET教程

史上最简单将数据信息导入wrod文档方案(C# for word)

代码如下:

/// <summary> 
/// 设置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("生成成功!"); 

   嘿嘿!大功告成啦!这种方法快捷,但是不能设置word其他的分页功能等等,不过应对于从数据库中把所有表导入到wrod是绰绰有余啦!~ 
   俺乃小小小小鸟儿,如过哪位大大大大鸟有更好的方案好的Code请多多指教哦!~Thanks

延伸 · 阅读

精彩推荐