基於java的簡單的excel生成工具類
本次使用的為poi包,以下為pom引用
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
工具類使用的方法:
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import com.alibaba.druid.util.StringUtils;
/**
* excel生成工具類
*
* @author tp
*
*/
public class ExcelUtils {
/**
* 生成excel
*
* @param datas
* 資料
* @param header
* 表頭
* @param folder
* 檔案路徑
* @param fileName
* 檔名稱
* @return
*/
public static boolean writeExcel(List<List<String>> datas, List<String> header, String folder, String fileName) {
if (datas == null || datas.isEmpty() || header == null || header.isEmpty() || StringUtils.isEmpty(folder)
|| StringUtils.isEmpty(fileName)) {
return false;
}
// 判斷路徑是否正確
File file = new File(folder);
if (!file.isDirectory()) {
return false;
}
// 設定檔案字尾
if (!fileName.endsWith(".xls")) {
fileName = fileName + ".xls";
}
// 第一步,建立一個workbook對應一個excel檔案
HSSFWorkbook workbook = new HSSFWorkbook();
// 第二部,在workbook中建立一個sheet對應excel中的sheet
HSSFSheet sheet = workbook.createSheet("統計表");
// 第三部,在sheet表中新增表頭第0行,老版本的poi對sheet的行列有限制
HSSFRow row = sheet.createRow(0);
// 第四步,建立單元格,設定表頭
for (int i = 0; i < header.size(); i++) {
row.createCell(i).setCellValue(header.get(i));
}
// 第五步,寫入實體資料,實際應用中這些資料從資料庫得到,物件封裝資料,集合包物件。物件的屬性值對應表的每行的值
for (int i = 0; i < datas.size(); i++) {
HSSFRow row1 = sheet.createRow(i + 1);
List<String> data = datas.get(i);
// 建立單元格設值
for (int j = 0; j < data.size(); j++) {
row1.createCell(j).setCellValue(data.get(j));
}
}
// 將檔案儲存到指定的位置
try {
if (!file.exists()) {
file.mkdirs();
}
FileOutputStream fos = new FileOutputStream(folder + "\\" + fileName);
workbook.write(fos);
fos.close();
return true;
} catch (IOException e) {
e.printStackTrace();
}
return false;
}
}
測試方法:
public static void main(String[] args) {
List<List<String>> list = new ArrayList<>();
for (int i = 0; i < 10; i++) {
List<String> data = new ArrayList<>();
data.add("user_" + i);
data.add("pass_" + i);
list.add(data);
}
List<String> header = new ArrayList<>();
header.add("使用者名稱");
header.add("密碼");
File file = new File("");
boolean writeExcel;
try {
writeExcel = ExcelUtils.writeExcel(list, header, file.getCanonicalPath(), "user1");
System.out.println(writeExcel);
} catch (IOException e) {
e.printStackTrace();
}
}
顯示效果
相關推薦
基於java的簡單的excel生成工具類
本次使用的為poi包,以下為pom引用 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactI
基於TwitterSnowflake分散式id生成工具類實現
1、 什麼是TwitterSnowflake? 簡介: TwitterSnowflake演算法是用來在分散式場景下生成唯一ID的。 舉個栗子:我們有10臺分散式MySql伺服器,我們的系統每秒能生成10W條資料插入到這10臺機器裡,現在我們需要為每一條資料生成一個全域性唯一的ID,
java中Excel處理工具類
/** 該工具類會返回處理結果和封裝之後的資料,獲取資料直接從 **/ import java.io.IOException; import java.io.InputStream; import java.text.DecimalFormat; import ja
Java通用的Excel檔案生成工具類,支援生成檔案和瀏覽器直接下載
<span style="font-size:14px;">java通用的Excel檔案建立方法,支援同文件多tab頁建立。只需要呼叫靜態方法,傳遞List<String>表頭和List<Map>資料集合等,即可生成Excel檔案。 p
Java 實現Excel匯入匯出(包含一些簡單樣式設定)工具類
最近很奇怪,客戶各種各樣奇葩的需求,匯出個表格設計各種樣式,真心無語,網上找了很多資料,新手就是這麼坑爹,找東西都不能有點速度!沒辦法,水平所致。提供給跟我差不多水平的朋友參考。 package com.cicro.fuchen.util.excel;
java Excel表格生成工具類
最近做資料列表匯出成Excel表格,藉此機會學習了一下。 首先我們需要通過hibernate連結資料庫,將資料庫欄位對映成POJO實體,這裡不多做廢話。 我們需要用excel表格工具類,首先需要幾個poi的jar包,poi讀取excel資料所需要的jar包。其他的還需要一些
java圖形驗證碼生成工具類及web頁面校驗驗證碼
組合 line des resp word buffere 需要 case ali 最近做驗證碼,參考網上案例,發現有不少問題,特意進行了修改和完善。驗證碼生成器:[ht
java隨機數生成工具類RandomStringUtils使用教程
最近專案中需要用到隨機數,網上搜了一下,發現 RandomStringUtils 這個工具類非常的不錯。而這個類呢?就在我們的最常用的 Apache Commons Lang (org.apache.commons.lang3.RandomStringUtils)包中,這真是
Java的驗證碼生成工具類程式碼以及控制器程式碼
import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import jav
最簡單的流水生成 工具類
package com.sumainfo.util; import java.text.SimpleDateFormat; import java.util.Date; /** * 流水號生成工具類 * @author Mfx * @data 208-8-31 *
#Java--POI之Excel匯出工具類(支援多個sheet頁同時匯出)
一、核心程式碼 package com.yx.yzh.utils; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.
java poi匯入Excel通用工具類
問題引入和分析 提示:如果不想看羅嗦的文章,可以直接到最後點選原始碼下載執行即可 最近在做一個匯入Excel的功能,在做之前在百度上面查詢“java通用匯入Excel工具類”,沒有查到,大多數都是java通用匯出Excel。後來仔細想想,匯出可
java excel匯出工具類
使用的是apache poi與註解類實現:maven:<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifact
使用POI做的一個生成Excel的工具類。包含了導出Excel和解析Excel方法
time 類型 解析excel rom 統計表 pty reat iou 包括 PoiExcelUtils.java /** * */ package com.common.office; import java.io.File; import java.io.
使用POI做的一個生成Excel的工具類。包含了匯出Excel和解析Excel方法
PoiExcelUtils.java /** * */ package com.common.office; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStrea
Java之——匯出Excel通用工具類
一、概述 相信大家在工作過程中,都會遇到這樣一個需求,就是將相關的資料列表匯出成excel,那麼,有沒有通用的匯出方式呢,這裡,就帶著大家一起來用Java實現一個通用的匯出Excel的工具。 二、專案實現 1、構建pom.xml 我們的工程是利用Maven來構建的
Java訂單號生成工具(實現二)基於佇列
使用了ConcurrentLinkedQueue,ConcurrentLinkedQueue是一個基於連結節點的無界執行緒安全佇列,它採用先進先出的規則對節點進行排序,當我們新增一個元素的時候,它會新增到佇列的尾部,當我們獲取一個元素時,它會返回佇列頭部的
利用JavaCompiler編譯java檔案(一個簡單封裝的工具類)
最近,在利用java做一個Online Judge系統,裡面涉及到編譯java檔案為class檔案,當時看過API文件,也百度過別人的一些部落格,感覺都不太符合個人胃口。雖然,有說得詳細的,也有很多權威的,也有很多使用例子的。但是主要是感覺學習成本過高了,他們都過多過少
Java訂單號生成工具(實現一)基於物件鎖
-----2017-04-17更新----- Re: claram 2017-02-04 16:15發表 [回覆] 回覆qq_27482239:line 36: 改為 >= line 41:finOderNum 改為 finOrderNum PS:本方法可能較為笨重
java二維碼工具類:生成二維碼和解析二維碼
利用google 的 zxing 生成和解析二維碼。 1、下載或maven加入依賴,我這選用的是3.3.0版本, jar下載地址: http://mvnrepository.com/artifact/com.google.zxing/core/3.3.0 http://mv