用jxl向一个excel中的2个sheet的特定单元格插入数据源代码
怎样在java中实现以下功能:
我有一个excel文件,里面有两张sheet表,现在要向两张表中的特定单元格插入数据。我程序只能实现向第一张表sheet中插入数据,第二张sheet不知道怎么处理,求指教!
jxl好像只支持office2007之前的,之后的都不支持了。
所以我现在用的是POI的方式。。
至于你的问题,jxl我是没法帮忙了,给你提供一个POI的方式吧。
这是我的一个工具类,传入一个。
String[][]的形式,进行写入。
jar包:
public static void poiWrite(String[][] str,String filepath){ InputStream inp; ifexist(filepath); try { inp = new FileInputStream(filepath); int rownum=str.length; int columnum=str[0].length; Workbook wb = WorkbookFactory.create(inp); Sheet sheet = wb.getSheetAt(1);//这里改成1就向第二张表插入数据了。 for(int i=0;i<rownum;i++){ //System.out.println("i:"+i); Row row = sheet.createRow(i); for(int j=0;j<columnum;j++){ /*System.out.println("j:"+j); */ Cell cell=row.createCell(j); //设置格式 cell.setCellType(Cell.CELL_TYPE_STRING); //设置值 cell.setCellValue(str[i][j]); } } // Write the output to a file FileOutputStream fileOut = new FileOutputStream(filepath); wb.write(fileOut); fileOut.close(); inp.close(); System.out.println("写入完成"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
private static void readexcel(){ Workbook workbook = null; try { File f = new File("G:\\test.xls"); InputStream in = new FileInputStream(f); workbook = Workbook.getWorkbook(in); Sheet sheet = workbook.getSheet(0); System.out.println(sheet.getName()); Sheet sheet2 = workbook.getSheet(1); System.out.println(sheet2.getName()); } catch (Exception e) { e.printStackTrace(); } }