Exl转换成html的方法_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 11:49:19
原创
1642人浏览过

此方法采用了一个插件:jacob-1.15-m4,这个插件可以将office转换成html,在此我只介绍了一种,将exl转换成html,转换后的html中有的border线为0.5px,在有的浏览器中不识别0.5px的border线,需要将生成的css中的0.5px,转换成1px,在系统中如果需要多次转换的话建议写一个单例模式,否则的话转换几次之后你电脑的内存就被撑爆了,原因很简单,就是每一次转换都会启动一次exl程序,启动的多了系统内存就沾满了,所以,建议还是写成单例模式,废话不多说,直接贴代码:

插件需要下载的可以点击此处下载:http://download.csdn.net/detail/s592652578/8446163


package com.odon.common.util;

 

立即学习前端免费学习笔记(深入)”;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileOutputStream;

import java.io.FileReader;

import java.io.IOException;

 

立即学习前端免费学习笔记(深入)”;

import com.jacob.activeX.ActiveXComponent;

import com.jacob.com.Dispatch;

import com.jacob.com.Variant;

 

立即学习前端免费学习笔记(深入)”;

public classExlToHtm {

 

立即学习前端免费学习笔记(深入)”;

   //单例模式

   private static ExlToHtm exlToHtm=null;

 

立即学习前端免费学习笔记(深入)”;

   public static ExlToHtm getExlToHtm(){

      if(exlToHtm==null)

         exlToHtm=new ExlToHtm();

      return exlToHtm;

   }

法语写作助手
法语写作助手

法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。

法语写作助手 31
查看详情 法语写作助手

 

立即学习前端免费学习笔记(深入)”;

   public static final int EXCEL_HTML = 44; 

   public static final ActiveXComponent app = new ActiveXComponent("Excel.Application");// 启动exl

 

立即学习前端免费学习笔记(深入)”;

   /** 

    * EXCEL转HTML 

    * @param xlsfile EXCEL文件全路径 

    * @param htmlfile 转换后HTML存放路径 

    */ 

   public synchronized void  excelToHtml(String xlsfile, Stringhtmlfile){ 

      //    ActiveXComponentapp = new ActiveXComponent("Excel.Application"); // 启动exl

      try

         app.setProperty("Visible",newVariant(false));  

         Dispatchexcels = app.getProperty("Workbooks").toDispatch();  

         Dispatchexcel = Dispatch.invoke(  

                excels,  

                "Open",  

                Dispatch.Method,  

                new Object[] { xlsfile, new Variant(false),  

                      new Variant(true) }, new int[1]).toDispatch();  

         Dispatch.invoke(excel,"SaveAs",Dispatch.Method,newObject[] {  

                htmlfile,newVariant(EXCEL_HTML)}, newint[1]);  

         Variantf = newVariant(false);  

         Dispatch.call(excel,"Close",f); 

      }catch (Exception e){  

         e.printStackTrace();  

      }finally{

         app.invoke("Quit", new Variant[] {});

      }  

   }

 

立即学习前端免费学习笔记(深入)”;

   /**

    * 修改css样式

    * @param filePath

    * @param cssPath

    */

   public static void readCss(StringfilePath,String cssPath) { 

      BufferedReaderbr = null

      Stringline = null

      StringBufferbuf = newStringBuffer(); 

      Stringcontent = null;

      Filetxt=newFile(cssPath);

      FileOutputStreamfos = null;

      try

         fos= newFileOutputStream(txt);

         // 根据文件路径创建缓冲输入流 

         br= newBufferedReader(newFileReader(filePath));

         // 循环读取文件的每一行, 对需要修改的行进行修改, 放入缓冲对象中 

         while ((line = br.readLine())!= null){ 

            // 此处根据实际需要修改某些行的内容 

            if(line.indexOf(":.5pt")>-1){

                line= line.replace(":.5pt", ":1pt");

                line= line + "\r";

            }

            buf.append(line);

         } 

         //判断文件是否存在

         if(!txt.exists()){

            txt.createNewFile();

         }

         content= buf.toString();

         byte bytes[]=new byte[1024];

         bytes=content.getBytes();   //新加的

         intb=content.length();   //改

         fos.write(bytes,0,b);

      }catch(Exception e) { 

         e.printStackTrace(); 

      }finally

         // 关闭流 

         if (br != null) { 

            try

                br.close(); 

            }catch(IOException e) { 

                br= null

            } 

         } 

         if( fos != null){

            try {

                fos.close();

            }catch(Exception e2) {

                e2.printStackTrace();

            }

         }

      } 

   } 

}

 

立即学习前端免费学习笔记(深入)”;

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号