复制代码 代码如下:
 
/// <summary> 
/// 设置Word模板,word表格样式在此设置 
/// </summary> 
/// <param></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'>"); 
html.Append(dsTr); 
//html.Append("</table>"); 
html.Append("</body>"); 
html.Append("</html>"); 
return html.ToString(); 
} 
/// <summary> 
/// 保存Word 
/// </summary> 
/// <param></param> 
/// <param></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></param> 
/// <param></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'>"); 
_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("生成成功!"); 
} 
新闻热点
疑难解答
图片精选