用JXL读写Excel文件

来源:互联网 发布:opencv java 图片切割 编辑:程序博客网 时间:2024/04/30 00:25

转载:http://gavin-chen.iteye.com/blog/257852

JXL是Java Excel的缩写,与名字相应,它是一个JAVA读写Excel文件的工具类,当然有另外的一个被称之为JAVA与Excel的完美解决方案POI,不过我没用过,以后再去尝试一下,因为当前做的项目的旧代码中有涉及到JXL的应用,所以就特地了解了一下,感觉就一个字,简单易用,感觉像是在用GWT的FlexTable,行列有个坐标,把相应的东西放到相应的坐标就行了,当然还有合并单元格之类的操作,很HTML Table!

好了,下面贴一段代码,虽然是网上抄来的,我只是省得以后到处找,大家也难得到这里来,看到了这篇文章,有兴趣就可以拿去看吧

Java代码  收藏代码
  1. import jxl.*;     
  2. import jxl.write.*;     
  3. import java.io.*;     
  4. import java.io.File.*;     
  5. import java.util.*;     
  6.     
  7.     
  8.     
  9. public class excel     
  10. {     
  11. public static void main(String[] args)      
  12. {     
  13.  String targetfile = "c:/out.xls";//输出的excel文件名     
  14.  String worksheet = "List";//输出的excel文件工作表名     
  15.  String[] title = {"ID","NAME","DESCRIB"};//excel工作表的标题     
  16.     
  17.     
  18.  WritableWorkbook workbook;     
  19.  try    
  20.  {     
  21.   //创建可写入的Excel工作薄,运行生成的文件在tomcat/bin下     
  22.   //workbook = Workbook.createWorkbook(new File("output.xls"));      
  23.   System.out.println("begin");     
  24.     
  25.   OutputStream os=new FileOutputStream(targetfile);      
  26.   workbook=Workbook.createWorkbook(os);      
  27.     
  28.   WritableSheet sheet = workbook.createSheet(worksheet, 0); //添加第一个工作表     
  29.   //WritableSheet sheet1 = workbook.createSheet("MySheet1", 1); //可添加第二个工作     
  30.   /*   
  31.    *jxl.write.Label label = new jxl.write.Label(0, 2, "A label record");  
  32.    *//put a label in cell A3, Label  (column,row)    
  33.    *//sheet.addCell(label);     
  34.        */    
  35.     
  36.   jxl.write.Label label;     
  37.   for (int i=0; i<title.length; i++)     
  38.   {     
  39.    //Label(列号,行号 ,内容 )     
  40.    label = new jxl.write.Label(i, 0, title[i]); //put the title in row1      
  41.    sheet.addCell(label);      
  42.   }     
  43.     
  44.   //下列添加的对字体等的设置均调试通过,可作参考用     
  45.   //添加数字     
  46.   jxl.write.Number number = new jxl.write.Number(343.14159); //put the number 3.14159 in cell D5     
  47.   sheet.addCell(number);     
  48.     
  49.   //添加带有字型Formatting的对象      
  50.   jxl.write.WritableFont wf = new jxl.write.WritableFont(WritableFont.TIMES,10,WritableFont.BOLD,true);      
  51.   jxl.write.WritableCellFormat wcfF = new jxl.write.WritableCellFormat(wf);      
  52.   jxl.write.Label labelCF = new jxl.write.Label(4,4,"文本",wcfF);      
  53.   sheet.addCell(labelCF);      
  54.     
  55.   //添加带有字体颜色,带背景颜色 Formatting的对象      
  56.   jxl.write.WritableFont wfc = new jxl.write.WritableFont(WritableFont.ARIAL,10,WritableFont.BOLD,false,jxl.format.UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.RED);      
  57.   jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(wfc);      
  58.   wcfFC.setBackground(jxl.format.Colour.BLUE);     
  59.   jxl.write.Label labelCFC = new jxl.write.Label(1,5,"带颜色",wcfFC);      
  60.   sheet.addCell(labelCFC);      
  61.     
  62.   //添加带有formatting的Number对象      
  63.   jxl.write.NumberFormat nf = new jxl.write.NumberFormat("#.##");      
  64.   jxl.write.WritableCellFormat wcfN = new jxl.write.WritableCellFormat(nf);      
  65.   jxl.write.Number labelNF = new jxl.write.Number(1,1,3.1415926,wcfN);      
  66.   sheet.addCell(labelNF);      
  67.     
  68.   //3.添加Boolean对象      
  69.   jxl.write.Boolean labelB = new jxl.write.Boolean(0,2,false);      
  70.   sheet.addCell(labelB);      
  71.     
  72.   //4.添加DateTime对象      
  73.   jxl.write.DateTime labelDT = new jxl.write.DateTime(0,3,new java.util.Date());      
  74.   sheet.addCell(labelDT);      
  75.     
  76.   //添加带有formatting的DateFormat对象      
  77.   jxl.write.DateFormat df = new jxl.write.DateFormat("ddMMyyyyhh:mm:ss");      
  78.   jxl.write.WritableCellFormat wcfDF = new jxl.write.WritableCellFormat(df);      
  79.   jxl.write.DateTime labelDTF = new jxl.write.DateTime(1,3,new java.util.Date(),wcfDF);      
  80.   sheet.addCell(labelDTF);      
  81.     
  82.   //和宾单元格     
  83.   //sheet.mergeCells(int col1,int row1,int col2,int row2);//左上角到右下角     
  84.   sheet.mergeCells(4,5,8,10);//左上角到右下角     
  85.   wfc = new jxl.write.WritableFont(WritableFont.ARIAL,40,WritableFont.BOLD,false,jxl.format.UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.GREEN);      
  86.   jxl.write.WritableCellFormat wchB = new jxl.write.WritableCellFormat(wfc);      
  87.   wchB.setAlignment(jxl.format.Alignment.CENTRE);     
  88.   labelCFC = new jxl.write.Label(4,5,"单元合并",wchB);      
  89.   sheet.addCell(labelCFC); //     
  90.     
  91.   //设置边框     
  92.   jxl.write.WritableCellFormat wcsB = new jxl.write.WritableCellFormat();      
  93.   wcsB.setBorder(jxl.format.Border.ALL,jxl.format.BorderLineStyle.THICK);     
  94.   labelCFC = new jxl.write.Label(0,6,"边框设置",wcsB);      
  95.   sheet.addCell(labelCFC);      
  96.   workbook.write();      
  97.   workbook.close();     
  98.  }  
  99.  catch (Exception e)   
  100.  {      
  101.   e.printStackTrace();      
  102.  }      
  103.    
  104.  System.out.println("end");     
  105.  Runtime r=Runtime.getRuntime();      
  106.  Process p=null;      
  107.  //String cmd[]={"notepad","exec.java"};      
  108.   
  109.  String cmd[]={"C:\\Program Files\\Microsoft Office\\Office\\EXCEL.EXE","out.xls"};      
  110.   
  111.  try  
  112.  {      
  113.   p=r.exec(cmd);      
  114.  }      
  115.  catch(Exception e)  
  116.  {      
  117.   System.out.println("error executing: "+cmd[0]);      
  118.  }     
  119.     
  120.     
  121.  }     
  122. }    
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 名字取了生僻字考大学怎么办 淘宝客服一直不说话怎么办 淘宝客服不说话也不发货怎么办 面对不说话的客人怎么办? 卖家客服不回复怎么办 2周小孩说话结巴怎么办 微信群里只领红包不说话的人怎么办 躺在微信不说话的客户怎么办 9岁儿童说话结巴怎么办 5岁儿童说话结巴怎么办 京东客服不说话怎么办 两岁宝宝说话有点结巴怎么办 孩子不敢跟外人说话怎么办? 孩子不爱跟外人说话怎么办 别人说我不说话怎么办 衣服屁股那块变亮怎么办 小孩家里说话外面不说话怎么办 2个月小宝宝便秘怎么办 3个月小宝宝便秘怎么办 微信客户不说话怎么办 一岁半宝宝便秘肛裂怎么办 网恋现在都不说话了怎么办 宝宝便秘四天了怎么办 月子里小孩吐奶怎么办 月子里的小孩吐奶怎么办 婴儿吃多了吐奶怎么办 20个月孩子便秘怎么办 一岁宝宝肛裂怎么办 婴儿吃饱了吐奶怎么办 23天新生儿吐奶怎么办 婴儿吐奶舌苔白怎么办 宝宝吐奶酸臭味怎么办? 1周岁吐奶有酸味怎么办 十多天的宝宝吐奶怎么办 未满月婴儿吐奶怎么办 2个月宝宝溢奶怎么办 四岁宝宝说话结巴怎么办 小孩说话结巴打顿怎么办 2岁宝宝突然说话结巴怎么办 2岁宝宝突然结巴怎么办 幼儿舌头起泡牙龈出血怎么办