5

HTML ページのコンテンツを Word にエクスポートしようとしています。

私のHtml表示ページは次のとおりです。

  1. あなたの好きな色は何ですか?

NA

  1. 上位 3 校を挙げてください。

1 つのナショナル 2 つの開発者 3 つの PS

そしてクリックイベントのボタン。ボタン クリック イベントは MS Word を開き、ページの内容を Word に貼り付けます。

ページという単語には、html デザイン ページのテーブル プロパティが含まれています。これは Word 2003 でのみ発生します。ただし、Word 2007 では、Word 文書にテーブル プロパティのないテキストが含まれています。Word 2003 でこのテーブル プロパティを削除するにはどうすればよいですか。

スナップショットを追加できません。そうでなければ、私はあなたを明確にします。

aspxでWebページをデザインしています。次のコードで Web ページのコンテンツをエクスポートしています。

protected void Button1_Click(object sender, EventArgs e)
{

    Response.ContentEncoding = System.Text.Encoding.UTF7;
    System.Text.StringBuilder SB = new System.Text.StringBuilder();
    System.IO.StringWriter SW = new System.IO.StringWriter();
    System.Web.UI.HtmlTextWriter htmlTW = new System.Web.UI.HtmlTextWriter(SW);
    tbl.RenderControl(htmlTW);
    string strBody = "<html>" +
        "<body>" + "<div><b>" + htmlTW.InnerWriter.ToString() + "</b></div>" +
        "</body>" +
        "</html>";

    Response.AppendHeader("Content-Type", "application/msword");
    Response.AppendHeader("Content-disposition", "attachment; filename=" + fileName);
    Response.ContentEncoding = System.Text.Encoding.UTF7;

    string fileName1 = "C://Temp/Excel" + DateTime.Now.Millisecond.ToString();
    BinaryWriter writer = new BinaryWriter(File.Open(fileName1, FileMode.Create));
    writer.Write(strBody);
    writer.Close();
    FileStream fs = new FileStream(fileName1, FileMode.Open, FileAccess.Read);
    byte[] renderedBytes;
    // Create a byte array of file stream length 
    renderedBytes = new byte[fs.Length];
    //Read block of bytes from stream into the byte array 
    fs.Read(renderedBytes, 0, System.Convert.ToInt32(fs.Length));
    //Close the File Stream 
    fs.Close();
    FileInfo TheFile = new FileInfo(fileName1);
    if (TheFile.Exists)
    {
        File.Delete(fileName1);
    }
    Response.BinaryWrite(renderedBytes);

    Response.Flush();
    Response.End();
}
4

4 に答える 4

0

質問が明確ではありません。

これらのリンクは、MSWord-C# の自動化を理解するのに役立ちます。

http://www.codeproject.com/KB/cs/Simple_Ms_Word_Automation.aspx

http://www.c-sharpcorner.com/UploadFile/amrish_deep/WordAutomation05102007223934PM/WordAutomation.aspx

于 2009-04-29T08:07:25.933 に答える
0

MS Office で認識されるようになった Open XML ドキュメントを作成することもできます。コード サンプルに関する詳細情報は次のとおりです: http://msdn.microsoft.com/en-us/library/bb656295.aspx

于 2009-06-30T15:56:06.187 に答える
0

私が理解していることから、その場で ms word 文書を作成しようとしており、出力を Word 2003 と 2007 で表示するときに問題が発生しています。

上記のコードでは、単純に html を吐き出し、それを強制的に ms word ドキュメントにしています。それが機能することにも驚いています。

代わりに、Office Interop (Microsoft.Office.Interop.Word) を使用するか、nuget を使用して DocX をインストールすることをお勧めします。オンラインでいくつかの例を見て、「C# create word doc」を検索してください。

于 2014-11-18T06:25:43.407 に答える