我要把一次注册确认的结果表格,(点击保存按钮)保存成WORD文档中,请问如何实现????

解决方案 »

  1.   

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

  2.   

    http://topic.csdn.net/u/20101226/11/7a3ea6e4-e2b5-4a6a-80c6-53c4785fda1e.html?91259
      

  3.   

    我是要把注册的信息保存为Word文档
      

  4.   

    打开WORD模版,设置书签值如
    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;
                    }