雖然打開Excel能做的操作很多很複雜,但是利用Apache POI就可以來處理很多Excel相關的操作。
但在下只是個菜鳥工程師;所以今天要談的是一些基本的操作 XD
-------------------------------------- 分隔線 ----------------------------------------
import java.io.FileOutputStream;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
public class TryCode {
public void export() {
//檔案要存放的位置
String outputFile = "E:/test.xls";
Workbook wb = new SXSSFWorkbook();//創建工作簿
Sheet sh = wb.createSheet("testSheet");//創建名為"testSheet"的工作表(頁?)
//創建儲存格風格
CellStyle allBorder = wb.createCellStyle();
allBorder.setBorderTop(CellStyle.BORDER_THIN); //上邊線設定
allBorder.setBorderBottom(CellStyle.BORDER_THIN); //下邊線設定
allBorder.setBorderLeft(CellStyle.BORDER_THIN); //左邊線設定
allBorder.setBorderRight(CellStyle.BORDER_THIN); //右邊線設定
//以上邊線設定都是CellStyle.BORDER_THIN 細線
allBorder.setVerticalAlignment(CellStyle.VERTICAL_CENTER); //內文置中
Row row_0 = sh.createRow(0); //創建列(0表示第一列,數字"1";依此類推)
Cell cell_0_0 = row_0.createCell(0); //創列欄(row列的第一欄,字母"A";依此類推)
cell_0_0.setCellValue("ABC"); //在cell_0的儲存格放入內文"ABC"
cell_0_0.setCellStyle(allBorder); //設定儲存格風格
//以下依此類推,創建第二列,再依序創建欄放入內文
Row row_1 = sh.createRow(1);
Cell cell_1_0 = row_1.createCell(0);
cell_1_0.setCellValue("DEF");
cell_1_0.setCellStyle(allBorder);
Cell cell_1_1 = row_1.createCell(1); //創列欄(row列的第二欄,字母"B";依此類推)
cell_1_1.setCellValue("GHI");
cell_1_1.setCellStyle(allBorder);
try {
//匯出檔案
FileOutputStream os= new FileOutputStream(outputFile);
wb.write(os);
wb.close();
os.flush();
os.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
-------------------------------------- 分隔線 ----------------------------------------
執行結果會變成這樣子: