美文网首页
java导入excle表格,并且对表格进行相应的修改,并对表格数

java导入excle表格,并且对表格进行相应的修改,并对表格数

作者: 哦00 | 来源:发表于2018-11-27 16:46 被阅读0次

    1.首先创建一个java项目

    完成效果如下图所示

    2.导入以下jar包

    3.代码如下

       其中行和列的操作是根据需求自动划分的

      1publicclass auto_date {  2privatestaticList> readExcel(File file)throws Exception {  3// 创建输入流,读取Excel  4InputStream is =new FileInputStream(file.getAbsolutePath());  5// jxl提供的Workbook类  6Workbook wb = Workbook.getWorkbook(is);  7// 只有一个sheet,直接处理  8//创建一个Sheet对象  9Sheet sheet = wb.getSheet(0); 10// 得到所有的行数 11introws = sheet.getRows(); 12// 所有的数据 13List> allData =newArrayList>(); 14// 越过第一行 它是列名称 15for(intj = 1; j < rows; j++) { 16List oneData =newArrayList(); 17// 得到每一行的单元格的数据 18Cell[] cells = sheet.getRow(j); 19for(intk = 0; k < cells.length; k++) { 20oneData.add(cells[k].getContents().trim()); 21} 22// 存储每一条数据 23allData.add(oneData); 24// 打印出每一条数据 25//System.out.println(oneData); 26} 27return allData; 28} 29publicstaticvoid main(String[] args) { 30File file =newFile("F://m//1.xls"); 31//42列 32//3337行 33try { 34List> allData=readExcel(file); 35//System.out.println("总数:"+allData.size());//总行数 36/** 37* 创建excle表格 38*/ 39// 第一步,创建一个webbook,对应一个Excel文件 40HSSFWorkbook wb =new HSSFWorkbook();  41// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet  42HSSFSheet sheet = wb.createSheet("小麦特性表");  43// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short  44HSSFRow row = sheet.createRow((int) 0);  45// 第四步,创建单元格,并设置值表头 设置表头居中  46//HSSFCellStyle style = wb.createCellStyle();  47//style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式  48//    HSSFRow row1 = sheet.createRow(0); 49HSSFCell cell = row.createCell((short) 0);  50cell.setCellValue("所有小麦特征表"); 51sheet.addMergedRegion(newCellRangeAddress(0,0,0,20)); 52HSSFRow row2 = sheet.createRow(1); 53row2.createCell(0).setCellValue("品种名称"); 54row2.createCell(1).setCellValue("生态类型"); 55row2.createCell(2).setCellValue("生育期"); 56row2.createCell(3).setCellValue("苗性"); 57row2.createCell(4).setCellValue("叶色"); 58row2.createCell(5).setCellValue("分蘖力"); 59row2.createCell(6).setCellValue("株型"); 60row2.createCell(7).setCellValue("株高"); 61row2.createCell(8).setCellValue("株高"); 62row2.createCell(9).setCellValue("穗形"); 63row2.createCell(10).setCellValue("芒"); 64row2.createCell(11).setCellValue("壳色"); 65row2.createCell(12).setCellValue("粒色"); 66row2.createCell(13).setCellValue("硬度"); 67row2.createCell(14).setCellValue("籽粒饱满度"); 68row2.createCell(15).setCellValue("亩穗数"); 69row2.createCell(16).setCellValue("穗粒数"); 70row2.createCell(17).setCellValue("千粒重"); 71row2.createCell(18).setCellValue("熟相"); 72row2.createCell(19).setCellValue("抗倒性"); 73row2.createCell(20).setCellValue("抗旱性"); 74row2.createCell(21).setCellValue("抗寒性1"); 75row2.createCell(22).setCellValue("抗寒性2"); 76row2.createCell(23).setCellValue("粗蛋白质"); 77row2.createCell(24).setCellValue("湿面筋"); 78row2.createCell(25).setCellValue("降落数值"); 79row2.createCell(26).setCellValue("沉淀指数"); 80row2.createCell(27).setCellValue("吸水量"); 81row2.createCell(28).setCellValue("形成时间"); 82row2.createCell(29).setCellValue("稳定时间"); 83row2.createCell(30).setCellValue("弱化度"); 84row2.createCell(31).setCellValue("出粉率"); 85row2.createCell(32).setCellValue("延伸性"); 86row2.createCell(33).setCellValue("拉伸能量"); 87row2.createCell(34).setCellValue("拉伸面积"); 88row2.createCell(35).setCellValue("最大拉伸阻力"); 89row2.createCell(36).setCellValue("容重"); 90row2.createCell(37).setCellValue("节水性指数1"); 91row2.createCell(38).setCellValue("节水性指数2"); 92row2.createCell(39).setCellValue("节水性1"); 93row2.createCell(40).setCellValue("节水性2"); 94row2.createCell(41).setCellValue("抗病性1"); 95row2.createCell(42).setCellValue("抗病性2"); 96 97 98 99100101/**102* 导出txt文件103*/104//    File writename = new File("G://2.txt"); // 相对路径,如果没有则要建立一个新的output。txt文件 105//    writename.createNewFile(); // 创建新文件 106//    BufferedWriter out = new BufferedWriter(new FileWriter(writename)); 107//    out.write("写入文件\r\n"); // \r\n即为换行108109110111//System.out.println(allData);//输出全部112for(inti = 0; i < allData.size(); i++) {113List list=allData.get(i);114HSSFRow row3 = sheet.createRow(i+2);115HSSFCell col0 = row3.createCell(0);116col0.setCellValue(list.get(0));117/**118* 导出txt文件119*/120//    out.write("**************************************"+"\r\n");121//    out.write("第 "+i+" 个"+"品种名称: "+list.get(0)+"\r\n");122//*************************123//System.out.println(allData.get(i));//逐条输出124//System.out.println(list.get(0));125for(intj = 0; j

    4.做成效果如下图所示

    欢迎工作一到五年的Java工程师朋友们加入Java群: 891219277 群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

    相关文章

      网友评论

          本文标题:java导入excle表格,并且对表格进行相应的修改,并对表格数

          本文链接:https://www.haomeiwen.com/subject/pyxnqqtx.html