@Override
public void adjustExcleColumnPosition(String filePath,int col) throws Exception{
File file=new File(filePath);
InputStream inputStream=new FileInputStream(file);
HSSFWorkbook workBook=new HSSFWorkbook(inputStream);
HSSFSheet firstSheet=workBook.getSheetAt(0);
for(int i=0;i<=firstSheet.getLastRowNum();i++){
HSSFRow row=firstSheet.getRow(i);
//记录每行第一列 数据
String firstCellValue=row.getCell(0).getStringCellValue();
for(int j=0;j<col;j++){
HSSFCell currentCell= row.getCell(j);
if(null == currentCell){
currentCell=row.createCell(j);
}
if(j==col-1){
//如果是最后一列了 把合同附件名称和编号 放到最后 循环下一行
currentCell.setCellValue(firstCellValue);
continue;
}
HSSFCell nextCell=row.getCell(j+1);
if(null == nextCell){
nextCell=row.createCell(j+1);
}
String nextCellValue=nextCell.getStringCellValue();
currentCell.setCellValue(nextCellValue);
}
} for(int i=0;i<=firstSheet.getLastRowNum();i++){
HSSFRow row=firstSheet.getRow(i);
HSSFCell firstCell=row.getCell(0);
HSSFCell lastCell=row.getCell(col-1);
String firstCellValue=firstCell.getStringCellValue();
String lastCellValue=lastCell.getStringCellValue();
if(null!=firstCellValue&&null!=lastCellValue){
System.out.println(firstCellValue+"----"+lastCellValue);
}
}
ByteArrayOutputStream outByte=new ByteArrayOutputStream();
workBook.write(outByte);
byte[] contents=outByte.toByteArray();
InputStream ins=new ByteArrayInputStream(contents);
OutputStream out = new FileOutputStream(file);
int bytesRead = 0;
byte[] buffer = new byte[8192];
while ((bytesRead = ins.read(buffer, 0, 8192)) != -1) {
out.write(buffer, 0, bytesRead);
}
out.close();
ins.close();
}

java poi excel操作 把第一列放到最后去的更多相关文章

  1. java poi excel操作 下拉菜单 及数据有效性

    1 private InputStream updateTemplateStyleHSSF(InputStream inputStream,CsCustCon csCustCon) throws IO ...

  2. Java POI Excel 导入导出

    这个东西很容易懂,不是特别难,难就难在一些复杂的计算和Excel格式的调整上. 近期写了一个小列子,放上来便于以后使用. POI.jar下载地址:http://mirror.bit.edu.cn/ap ...

  3. java 对excel操作 读取、写入、修改数据;导出数据库数据到excel

    ============前提加入jar包jxl.jar========================= // 从数据库导出数据到excel public List<Xskh> outPu ...

  4. java对excel操作

    package test; import jxl.*; import jxl.Cell; import java.io.*; /** * 读取excel */ public class TestExc ...

  5. java POI excel 导出复合样式(一个单元格两个字体)

    前言:java poi 导出 excel 时,需要设置一个单元格有多个字体样式,有点类似于富文本. 想要达到的效果(一个单元格里): 我使用的 poi 版本是 <dependency> & ...

  6. java poi excel导入模板设置下拉框

    import org.apache.poi.hssf.usermodel.DVConstraint; import org.apache.poi.hssf.usermodel.HSSFCell; im ...

  7. java poi excel 生成表格的工具封装

    效果如下: 代码如下: import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import ...

  8. java, poi, excel

    工作需要用java操作Excel,现在网上搜索了一下,决定选取POI包来操作.pom内容如下: <dependency> <groupId>org.apache.poi< ...

  9. java POI Excel 单元格样式

    正如Html需要CSS一样,我们的POI生成的Excel同样需要样式才能更完美的表现我们的数据.下面还是从简单的例子出发,学习和了解POI的样式设计. 一.我的位置. 1 package com.my ...

随机推荐

  1. javascript call apply

    call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向.因为 JavaScript 的函数存在「定义时上下文」和「 ...

  2. 接口测试工具-Jmeter使用笔记(七:用户定义的变量)

    使用场景:一组API根据业务流程制作成测试脚本,想要移植到其他测试环境时,由于数据库发生了变更,有些初始化数据也相应发生了变化,例如环境地址.请求路径等等.博主甚至把服务器地址和接口的部分共同请求路径 ...

  3. python框架之Django(4)-视图&路由

    视图 负责接收请求和返回响应 FBV和CBV FBV FBV(function base views) 就是在视图里使用函数处理请求. from django.conf.urls import url ...

  4. VoiceXML简介

    简单来说,VoiceXML就是语音网络世界的HTML,一种用于语音应用的开放标准的标记语言.VoiceXML的问世使得为HTML发展起来的web体系也能够轻松地创建和使用语音应用. 发展历史: 199 ...

  5. python_函数式编程

    函数式编程是一种编程范式 (而面向过程编程和面向对象编程也都是编程范式).在面向过程编程中,我们见到过函数(function):在面向对象编程中,我们见过对象(object).函数和对象的根本目的是以 ...

  6. Java 动态代理详解

    package com.at221; //代理设计模式: interface ClothFactory{ void product(); } class NikeFactory implements ...

  7. linux以16进制查看文件

    vim 先用vim -b data 以2进制打开文件,然后用xxd工具转化,在vim的命令行模式下: :%!xxd        --将当前文本转化为16进制格式 :%!xxd -r    --将16 ...

  8. vs2017添加引用出错:对COM组件的调用返回了错误HRESULT E_FAIL

    1.以管理员身份打开 Developer Command Prompt for VS 2017(vs2017开发人员命令提示符) 2.定位到你的vs2017的安装目录 例:E:\Program Fil ...

  9. 将Bdd100k数据集转为CoCo数据集

    小可爱,加油噻~ 添加上级目录 import sys sys.append('../..') 这样 from ... import 就会把加入的路径要扫描哒 os.walk() 方法用于通过在目录树中 ...

  10. 2019 GOALS

    ANNUAL GOAL 生活 1. 养成早睡早起的习惯 2. 体重:43kg 总体来讲希望自己有一个健康的生活方式,良好的饮食.运动习惯. 2019-04-17 18:47:14 UPDATE 3. ...