]> source.dussan.org Git - poi.git/commitdiff
github-52: add ExcelToHtmlConverter method that works on InputStreams. Thanks to...
authorJaven O'Neal <onealj@apache.org>
Tue, 16 May 2017 00:58:01 +0000 (00:58 +0000)
committerJaven O'Neal <onealj@apache.org>
Tue, 16 May 2017 00:58:01 +0000 (00:58 +0000)
https://github.com/apache/poi/pull/52

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1795256 13f79535-47bb-0310-9956-ffa450edef68

src/scratchpad/src/org/apache/poi/hssf/converter/ExcelToHtmlConverter.java

index 5019339d37bc8859f2ce9a70ac218a9f37789d3c..77ee49cf29fde43c4c054765268adccd1517a87c 100644 (file)
@@ -18,6 +18,7 @@ package org.apache.poi.hssf.converter;
 
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
 import java.util.List;
@@ -106,7 +107,7 @@ public class ExcelToHtmlConverter extends AbstractExcelConverter
      * Converts Excel file (97-2007) into HTML file.
      * 
      * @param xlsFile
-     *            file to process
+     *            workbook file to process
      * @return DOM representation of result HTML
      * @throws IOException 
      * @throws ParserConfigurationException 
@@ -114,12 +115,48 @@ public class ExcelToHtmlConverter extends AbstractExcelConverter
     public static Document process( File xlsFile ) throws IOException, ParserConfigurationException
     {
         final HSSFWorkbook workbook = ExcelToHtmlUtils.loadXls( xlsFile );
+        try {
+            return ExcelToHtmlConverter.process( workbook );
+        } finally {
+            workbook.close();
+        }
+    }
+
+    /**
+     * Converts Excel file (97-2007) into HTML file.
+     * 
+     * @param xlsFile
+     *            workbook stream to process
+     * @return DOM representation of result HTML
+     * @throws IOException 
+     * @throws ParserConfigurationException 
+     */
+    public static Document process( InputStream xlsStream ) throws IOException, ParserConfigurationException
+    {
+        final HSSFWorkbook workbook = new HSSFWorkbook( xlsStream );
+        try {
+            return ExcelToHtmlConverter.process( workbook );
+        } finally {
+            workbook.close();
+        }
+    }
+
+    /**
+     * Converts Excel file (97-2007) into HTML file.
+     * 
+     * @param xlsFile
+     *            workbook instance to process
+     * @return DOM representation of result HTML
+     * @throws IOException 
+     * @throws ParserConfigurationException 
+     */
+    public static Document process( HSSFWorkbook workbook ) throws IOException, ParserConfigurationException
+    {
         ExcelToHtmlConverter excelToHtmlConverter = new ExcelToHtmlConverter(
                 XMLHelper.getDocumentBuilderFactory().newDocumentBuilder()
                         .newDocument() );
         excelToHtmlConverter.processWorkbook( workbook );
         Document doc = excelToHtmlConverter.getDocument();
-        workbook.close();
         return doc;
     }