java操作有下拉框选择的excel
从http://sourceforge.net/projects/jexcelapi/files/中下载jxl.jar包
然后导入到工程中
package test;/** * 读取Excel文件的内容 * @param file 待读取的文件 * @return 生成Excel的类 */import java.io.File;import java.util.ArrayList;import java.util.List;import jxl.Workbook;import jxl.format.Border;import jxl.format.BorderLineStyle;import jxl.format.Colour;import jxl.write.Label;import jxl.write.WritableCellFeatures;import jxl.write.WritableCellFormat;import jxl.write.WritableFont;import jxl.write.WritableSheet;import jxl.write.WritableWorkbook;import jxl.write.WriteException;//创建Excel文件public class CreateXLS {public static void main(String args[]) {try {WritableWorkbook wwb = Workbook.createWorkbook(new File("test.xls"));WritableSheet ws = wwb.createSheet(" Sheet1 ", 0); Label labelMergeCells = new Label(0, 0, "安全对象导入模板", getHeader()); ws.addCell(labelMergeCells); ws.mergeCells(0,0,9,0); ws.setRowView(0,800);//设置行高 String[] fieldToTitle = new String[] {"Ip地址", "标准系统", "SVN地址"}; //添加表头 for(int t=0;t<fieldToTitle.length;t++){ Label label = new Label(t, 1, fieldToTitle[t], getTitle()); if (label.getString().equals("标准系统")) { for(int td=0; td<10; td++) { Label subLabel = new Label(t, td, ""); WritableCellFeatures wcf = new WritableCellFeatures(); List angerlist = new ArrayList(); angerlist.add("电话");//可从数据库中取出 angerlist.add("手机"); angerlist.add("呼机"); wcf.setDataValidationList(angerlist); subLabel.setCellFeatures(wcf); ws.addCell(subLabel); } } // 将定义好的单元格添加到工作表中 ws.addCell(label); ws.setColumnView(t, 30); }// 写入数据并关闭文件wwb.write();wwb.close();} catch (Exception e) {System.out.println(e);}}/** * 设置头的样式 * @return */ public static WritableCellFormat getHeader(){ WritableFont font = new WritableFont(WritableFont.TIMES, 24 ,WritableFont.BOLD);//定义字体 try{ font.setColour(Colour.BLUE);//蓝色字体 } catch (WriteException e1){ e1.printStackTrace(); } WritableCellFormat format = new WritableCellFormat(font); try{ format.setAlignment(jxl.format.Alignment.CENTRE);//左右居中 format.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//上下居中 format.setBorder(Border.ALL,BorderLineStyle.THIN,Colour.BLACK);//黑色边框 format.setBackground(Colour.YELLOW);//黄色背景 } catch (WriteException e){ e.printStackTrace(); } return format; } /** * 设置标题样式 * @return */ public static WritableCellFormat getTitle(){ WritableFont font = new WritableFont(WritableFont.TIMES, 14); try{ font.setColour(Colour.BLUE);//蓝色字体 } catch (WriteException e1){ // TODO 自动生成 catch 块 e1.printStackTrace(); } WritableCellFormat format = new WritableCellFormat(font); try { format.setAlignment(jxl.format.Alignment.CENTRE); format.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE); format.setBorder(Border.ALL,BorderLineStyle.THIN,Colour.BLACK); } catch (WriteException e){ // TODO 自动生成 catch 块 e.printStackTrace(); } return format; }}?