本文使用的是office软件自带的Save as 功能 自动存储为Html网页以便在线查看Ofiice文档
代码保留
Excel
static public void excelToHtml(string inputFile, string outputFile) { try { string fileName = System.IO.Path.GetFileName(inputFile); //string outputFile = Server.MapPath(Request.ApplicationPath + "\\Data\\" + fileName.Remove(fileName.LastIndexOf('.')) + ".html"); if (!System.IO.File.Exists(outputFile)) { object missing = Type.Missing; Excel.Application excel = new Excel.Application(); Excel.Workbook work = excel.Application.Workbooks.Open(inputFile, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing); work.SaveAs(outputFile, Excel.XlFileFormat.xlHtml, missing, missing, missing, missing, Excel.XlSaveAsAccessMode.xlExclusive, missing, missing, missing, missing, missing); work.Close(false, missing, missing); excel.Quit(); KillProcess("EXCEL"); } else { } } catch (Exception ex) { throw ex; } }
Word
static public void wordToHtml(string inputFile, string outputFile) { try { Word.Application appClass = new Word.ApplicationClass(); Type wordType = appClass.GetType(); Word.Documents docs = appClass.Documents; Type docsType = docs.GetType(); Word.Document doc = (Word.Document)docsType.InvokeMember("Open", System.Reflection.BindingFlags.InvokeMethod, null, docs, new Object[] { inputFile, true, true }); Type docType = doc.GetType(); docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod, null, doc, new object[] { outputFile, Word.WdSaveFormat.wdFormatHTML }); wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, appClass, null); //KillProcess("WINWORD"); } catch (Exception ex) { throw ex; } }
PowerPoint
static public void powerPointToHtml(string inputFile, string outputFile) { try { PowerPoint.Application pa = new PowerPoint.ApplicationClass(); PowerPoint.Presentation pptDoctmp = pa.Presentations.Open(inputFile, Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoFalse); pptDoctmp.SaveAs(outputFile, PowerPoint.PpSaveAsFileType.ppSaveAsHTML, Microsoft.Office.Core.MsoTriState.msoFalse); pptDoctmp.Close(); pa.Quit(); //KillProcess("POWERRNT"); } catch (Exception ex) { throw ex; } }