2016-06-01 17 views
0

次のコードを使用して、単語文書またはExcel文書をHTMLファイルに変換するコードがあります。しかし、以下のコードは、excelファイル用のword documentのhtmlファイルのみを開き、メインのhtmlではなく、別の場所でsheet.htmlを探し続けます。私は単語の文書で、タブがないことに気づいた。しかし、Excelとtabとsheet.htmlがあります。そうかもしれない。もしそうなら、以下のコードを使用して、ExcelからHTMLファイルに変換して開く方法はありますか?オープンなhtmlファイルをバイト配列として表示し、ブラウザに表示

byte[] bytes; 
    using (FileStream fs = new FileStream(htmlFilePath.ToString(), FileMode.Open, FileAccess.Read)) 
    { 
     BinaryReader reader = new BinaryReader(fs); 
     bytes = reader.ReadBytes((int)fs.Length); 
     fs.Close(); 
    } 
    Response.BinaryWrite(bytes); 
    Response.Flush(); 

あなたの助けありがとうございました、ここで私はあなたがHTMLファイルに変換した場合

Microsoft.Office.Interop.Excel.ApplicationClass excelApplicationClass = new Microsoft.Office.Interop.Excel.ApplicationClass(); 


     excelApplicationClass.Workbooks.Open(destination, 
              Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
              Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
              Type.Missing, Type.Missing, Type.Missing, Type.Missing, 
              Type.Missing, Type.Missing); 
     excelApplicationClass.Visible = false; 
     Microsoft.Office.Interop.Excel.Workbook workBook = excelApplicationClass.ActiveWorkbook; 

     workBook.SaveAs(htmlFilePath, XlFileFormat.xlHtml); 
     workBook.Close(); 
+0

おそらくファイルは複数のHTMLファイルと画像に保存されます。あなたは実際にあなたが望むものを見つけ出すか、あるいは他の方法でパッケージ化する必要があります。さて、このような自動化シナリオでInteropを使用することは[推奨されないかサポートされています](https://support.microsoft.com/en-gb/kb/257757)です。 –

+0

なぜそれが推奨されないのか教えていただけますか?ありがとうございます – user3731575

+0

私があなたに与えたリンクは、理由の網羅的なリストを持っています。利用可能な他のマネージコードオプションがあります(そして、私はあるものが単一のhtmlファイルにブックを保存すると確信しています)。 –

答えて

0

をExcelファイルからHTMLに変換するために使用したコードは、なぜ単に使用しないですProcess.Startこれを開くには?

+0

私はちょうどそれを試みたが、それはファイルを開いたが、現在のタブの代わりに新しいタブでそれを開きます。また、それを開いた後、私はそれらのHTMLとその関連ファイルをすぐに削除したいと思います。 – user3731575

関連する問題