中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java怎么實現讀取及生成Excel文件的方法

發布時間:2021-04-26 12:27:15 來源:億速云 閱讀:564 作者:小新 欄目:編程語言

這篇文章主要介紹Java怎么實現讀取及生成Excel文件的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

常用的java框架有哪些

1.SpringMVC,Spring Web MVC是一種基于Java的實現了Web MVC設計模式的請求驅動類型的輕量級Web框架。2.Shiro,Apache Shiro是Java的一個安全框架。3.Mybatis,MyBatis 是支持普通 SQL查詢,存儲過程和高級映射的優秀持久層框架。4.Dubbo,Dubbo是一個分布式服務框架。5.Maven,Maven是個項目管理和構建自動化工具。6.RabbitMQ,RabbitMQ是用Erlang實現的一個高并發高可靠AMQP消息隊列服務器。7.Ehcache,EhCache 是一個純Java的進程內緩存框架。

一、讀取Excel文件

需要先下載poi-3.0.1-FINAL-20070705.jar(點擊此處本站下載poi-3.0.1-FINAL-20070705.jar。)

ExcelExamRead.java

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class ExcelExamRead {
/** 讀Excel文件內容 */
public void showExcel(String excelName) {
File file = new File(excelName);
FileInputStream in = null;
try {
// 創建對Excel工作簿文件的引用
in = new FileInputStream(file);
HSSFWorkbook hwb = new HSSFWorkbook(in);
HSSFSheet sheet = hwb.getSheet("myFirstExcel");// 根據指定的名字來引用此Excel中的有效工作表
// 讀取Excel 工作表的數據
System.out.println("下面是Excel文件" + file.getAbsolutePath() + "的內容:");
HSSFRow row = null;
HSSFCell cell = null;
int rowNum = 0; 
// 行標
int colNum = 0; 
// 列標
for (; rowNum < 9; rowNum++) {
// 獲取第rowNum行
row = sheet.getRow((short) rowNum);
for (colNum = 0; colNum < 5; colNum++) {
cell = row.getCell((short) colNum);// 根據當前行的位置來創建一個單元格對象
System.out.print(cell.getStringCellValue() + "\t");// 獲取當前單元格中的內容
}
System.out.println(); // 換行
}
in.close();
} catch (Exception e) {
System.out
.println("讀取Excel文件" + file.getAbsolutePath() + "失敗:" + e);
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e1) {
}
}
}
}
public static void main(String[] args) {
ExcelExamRead excel = new ExcelExamRead();
String excelName = "D:/ExcelExamRead.xls";
excel.showExcel(excelName);
}
}

二、生成Excel文件

ExcelExamWrite.java:

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
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.hssf.util.Region;
//創建Excel文件
public class ExcelExamWrite {
// 新建一個Excel文件,里面添加5行5列的內容,另外添加一個合并2行5列的大單元格以及一個合并2行1列的5個合并單元格。
public void createExcel(String fileName) {
File file = new File(fileName);// 創建excel文件對象
FileOutputStream fOut = null;
try {
// 創建一個新的HSSFWorkbook對象
HSSFWorkbook workbook = new HSSFWorkbook();
// 創建一個Excel的工作表,可以指定工作表的名字
HSSFSheet sheet = workbook.createSheet("myFirstExcel");
// 創建字體,紅色、粗體
HSSFFont font = workbook.createFont();
font.setColor(HSSFFont.COLOR_RED);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
HSSFFont font1 = workbook.createFont();
// 創建字體,黑色、非粗體
font1.setColor(HSSFFont.COLOR_NORMAL);
font1.setBoldweight(HSSFFont.BOLDWEIGHT_NORMAL);
// 創建單元格的格式,如居中、左對齊等
HSSFCellStyle cellStyle = workbook.createCellStyle();
cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 水平方向上居中對齊
// 垂直方向上居中對齊
cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
cellStyle.setFont(font); // 設置字體
HSSFCellStyle cellStyle1 = workbook.createCellStyle();
cellStyle1.setAlignment(HSSFCellStyle.ALIGN_LEFT);
cellStyle1.setFont(font1);
// 下面將建立一個4行3列的表。第一行為表頭。
int rowNum = 0;// 行標
int colNum = 0;// 列標
// 建立表頭信息
HSSFRow row = sheet.createRow((short) rowNum); // 在索引0的位置創建行
HSSFCell cell = null; // 單元格
for (colNum = 0; colNum < 5; colNum++) {
// 在當前行的colNum列上創建單元格
cell = row.createCell((short) colNum);
// 定義單元格為字符類型,也可以指定為日期類型、數字類型
cell.setCellType(HSSFCell.CELL_TYPE_STRING);
// 定義編碼方式,為了支持中文,這里使用了ENCODING_UTF_16
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
cell.setCellStyle(cellStyle); // 為單元格設置格式
cell.setCellValue("表頭-第" + (colNum + 1) + "列"); // 添加內容至單元格
}
rowNum++;
for (; rowNum < 5; rowNum++) {
// 新建第rowNum行
row = sheet.createRow((short) rowNum);
for (colNum = 0; colNum < 5; colNum++) {
// 在當前行的colNum位置創建單元格
cell = row.createCell((short) colNum);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
cell.setCellStyle(cellStyle1);
cell.setCellValue("表體-第" + rowNum + "行第" + (colNum + 1)
+ "列");
}
}
// 合并單元格
// 先創建2行5列的單元格,然后將這些單元格合并為2個大單元格
rowNum = 5;
for (; rowNum < 9; rowNum++) {
row = sheet.createRow((short) rowNum);
for (colNum = 0; colNum < 5; colNum++) {
// 在當前行的colNum位置創建單元格
cell = row.createCell((short) colNum);
}
}
// 建立第一個大單元格,高度為2,寬度為2
rowNum = 5;
colNum = 0;
Region region = new Region(rowNum, (short) colNum, (rowNum + 1),
(short) (colNum + 4));
sheet.addMergedRegion(region);
// 獲得第一個大單元格
cell = sheet.getRow(rowNum).getCell((short) colNum);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
cell.setCellStyle(cellStyle);
cell.setCellValue("合并行單元格");
// 建立第二個大單元格,高度為2,寬度為3
rowNum = 7;
for (colNum = 0; colNum < 5; colNum++) {
region = new Region(rowNum, (short) colNum, (rowNum + 1),
(short) (colNum));
sheet.addMergedRegion(region);
// 獲得第二個大單元格
cell = sheet.getRow(rowNum).getCell((short) colNum);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
cell.setCellStyle(cellStyle);
cell.setCellValue("合并列單元格");
}
// 新建一輸出文件流
fOut = new FileOutputStream(file);
// 將創建的內容寫到指定的Excel文件中
workbook.write(fOut);
fOut.flush();
fOut.close();// 操作結束,關閉文件
System.out.println("Excel文件創建成功!\nExcel文件的存放路徑為:"
+ file.getAbsolutePath());
} catch (Exception e) {
System.out.println("Excel文件" + file.getAbsolutePath()
+ "創建失敗\n其原因為:" + e);
} finally {
if (fOut != null) {
try {
fOut.close();
} catch (IOException e1) {
}
}
}
}
public static void main(String[] args) throws Exception {
ExcelExamWrite excel = new ExcelExamWrite();
String fileName = "e:/ExcelExamWrite.xls";
excel.createExcel(fileName);
}
}

以上是“Java怎么實現讀取及生成Excel文件的方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

柯坪县| 扎鲁特旗| 乌拉特中旗| 卢湾区| 衡东县| 宣汉县| 南华县| 资兴市| 宝应县| 合水县| 拜泉县| 正安县| 阳城县| 徐闻县| 出国| 茌平县| 当雄县| 淮南市| 长垣县| 华亭县| 蓬莱市| 株洲县| 永寿县| 景宁| 伊通| 务川| 阆中市| 和静县| 崇左市| 濮阳市| 个旧市| 敦煌市| 福清市| 科技| 崇州市| 永川市| 克东县| 阿勒泰市| 临颍县| 景泰县| 绥阳县|