java 如何往已經(jīng)存在的excel表格里面追加數(shù)據(jù)的方法
第一步、導入jar包,兩個
poi.jar包 地址在 http://m.fzitv.net/softs/542575.html
jxl.jar包 地址在 http://m.fzitv.net/softs/544392.html
第二步、編寫程序
package cn.com.com;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class Excel {
/*
* author:命運的信徒
* date:2019-07-31
* arm:通過java程序往excel里面續(xù)寫數(shù)據(jù)
*/
public static void main(String[] args) {
String url="C:/Users/Administrator/Desktop/img/1.xls";
FileInputStream fs;
try {
fs = new FileInputStream(url);
POIFSFileSystem ps=new POIFSFileSystem(fs); //使用POI提供的方法得到excel的信息
HSSFWorkbook wb=new HSSFWorkbook(ps);
HSSFSheet sheet=wb.getSheetAt(0); //獲取到工作表,因為一個excel可能有多個工作表
HSSFRow row=sheet.getRow(0);
int hang=0;
if("".equals(row)||row==null){
hang=0;
}else{
hang=sheet.getLastRowNum();
hang=hang+1;
}
//分別得到最后一行的行號,和一條記錄的最后一個單元格
FileOutputStream out=new FileOutputStream(url); //向d://test.xls中寫數(shù)據(jù)
row=sheet.createRow((short)(hang)); //在現(xiàn)有行號后追加數(shù)據(jù)
row.createCell(0).setCellValue("安徽"); //設(shè)置第一個(從0開始)單元格的數(shù)據(jù)
row.createCell(1).setCellValue("安慶"); //設(shè)置第二個(從0開始)單元格的數(shù)據(jù)
out.flush();
wb.write(out);
out.close();
System.out.println(row.getPhysicalNumberOfCells()+" "+row.getLastCellNum());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} //獲取d://test.xls
}
}
第三步、查看excel表格里面的內(nèi)容
水紅色是第一次添加的數(shù)據(jù)
深藍色是第二次添加的數(shù)據(jù)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
mybatis createcriteria和or的區(qū)別說明
這篇文章主要介紹了mybatis createcriteria和or的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
SpringBoot如何使用@RequestBody進行數(shù)據(jù)校驗
在Web開發(fā)中,前臺向后臺發(fā)送數(shù)據(jù)是非常常見的場景,而在SpringBoot框架中,我們通常使用@RequestBody注解來接收前臺發(fā)送的?JSON數(shù)據(jù),并將其轉(zhuǎn)化為Java對象,本文將介紹如何在?SpringBoot?中使用?@RequestBody?進行數(shù)據(jù)校驗2023-06-06
SpringBoot整合MongoDB的實現(xiàn)代碼
自己本科時候一直使用的是Mysql,目前的課題組使用的是MongoDB,因此就花了一部分時間整理了一下,實現(xiàn)springboot與MongoDB的整合,并且實現(xiàn)基本的增刪改查操作,從頭到尾給出一個完整的案例。2021-05-05
詳解Java?ThreadPoolExecutor的拒絕策略
這篇文章主要介紹了Java?ThreadPoolExecutor的拒絕策略,本文對于線程的池的幾種策略進行詳細的講解,在實際的生產(chǎn)中需要集合相關(guān)的場景來選擇合適的拒絕策略,需要的朋友可以參考下2022-08-08
Java中的字節(jié)流InputStream和OutputStream詳解
這篇文章主要介紹了Java中的字節(jié)流InputStream和OutputStream詳解,繼承自InputStream的流都是用于向程序中輸入數(shù)據(jù),且數(shù)據(jù)的單位為字節(jié)8bit,我們看到的具體的某一些管道,凡是以InputStream結(jié)尾的管道,都是以字節(jié)的形式向我們的程序輸入數(shù)據(jù),需要的朋友可以參考下2023-10-10
Swagger2不被SpringSecurity框架攔截的配置及說明
這篇文章主要介紹了Swagger2不被SpringSecurity框架攔截的配置及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03
深入理解Mybatis中的resultType和resultMap
這篇文章給大家介紹了mybatis中的resultType和resultMap的用法實例講解,MyBatis中在查詢進行select映射的時候,返回類型可以用resultType,也可以用resultMap,至于兩種用法區(qū)別,通過本文一起學習吧2016-09-09

