zoukankan      html  css  js  c++  java
  • java创建excel入门

    package poi;

    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;

    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.ss.usermodel.CellStyle;
    import org.apache.poi.ss.usermodel.Font;
    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.usermodel.XSSFWorkbook;
    import org.junit.Test;

    /**
    * @Description: poi实现输出信息到excel文件
    * @Author: nutony
    * @Date: 2013-12-14
    */
    public class Test2XSSF {
    @Test
    public void rule() throws FileNotFoundException, IOException{
    String xlsFile = "c:/poiXFFS.xlsx";
    Workbook wb = new XSSFWorkbook(new FileInputStream(xlsFile));

    System.out.println("共创建多少样式 "+wb.getNumCellStyles());
    System.out.println("共创建多少字体 "+wb.getNumberOfFonts());

    Sheet sheet = wb.getSheetAt(0);

    System.out.println("共多少合并单元格 "+sheet.getNumMergedRegions());
    System.out.println("起始行数 "+sheet.getFirstRowNum());
    System.out.println("结束行数 "+sheet.getLastRowNum()+1);

    }


    /*
    * dom4j-1.6.1.jar
    * poi-3.9-20121203.jar
    * poi-ooxml-3.9-20121203.jar
    * poi-ooxml-schemas-3.9-20121203.jar
    * stax-api-1.0.1.jar
    * xmlbeans-2.3.0.jar
    */
    @Test
    public void print() throws Exception{
    String xlsFile = "c:/clroleprice.xlsx";

    //STEP 1:打开excel文件
    Workbook wb = new XSSFWorkbook(); //创建excel文件
    //Workbook wb = new XSSFWorkbook(new FileInputStream(xlsFile)); //打开已存在的excel文件

    //STEP 2:打开当前工作簿
    Sheet sheet = wb.createSheet("我的第一个工作簿"); //建立新的sheet对象
    //Sheet sheet = wb.getSheetAt(0); //选择第一个工作簿
    //wb.setSheetName(0, "我的第一个工作簿"); //设置工作簿的名称

    Row nRow = null;
    Cell nCell = null;

    //STEP 3:创建行对象
    nRow = sheet.createRow((short)1); //第2行

    //STEP 4:指定列 创建单元格对象
    nCell = nRow.createCell((short)(2)); //第3列

    //STEP 5:指定列 创建单元格对象
    nCell.setCellValue("我是单元格传智播客");

    //STEP 6:设置样式
    nCell.setCellStyle(leftStyle(wb));

    //STEP 7:关闭保存excel文件
    FileOutputStream fOut = new FileOutputStream(xlsFile);
    wb.write(fOut);
    fOut.flush();
    fOut.close();

    }

    @Test
    public void testprint() throws Exception{
    String xlsFile = "c:/clroleprice.xlsx";

    Workbook wb = new XSSFWorkbook();
    Sheet sheet = wb.createSheet("我的第一个工作簿");

    Row nRow = null;
    Cell nCell = null;


    for(int i=0;i<100000;i++){
    System.out.println(i);
    nRow = sheet.createRow(i);

    for(int j=0;j<20;j++){
    nCell = nRow.createCell(j);
    nCell.setCellValue("我是单元格传智播客");
    }
    }

    //STEP 6:设置样式
    nCell.setCellStyle(leftStyle(wb));

    //STEP 7:关闭保存excel文件
    FileOutputStream fOut = new FileOutputStream(xlsFile);
    wb.write(fOut);
    fOut.flush();
    fOut.close();

    }



    //设置单元格样式
    private CellStyle leftStyle(Workbook wb){
    CellStyle curStyle = wb.createCellStyle();
    Font curFont = wb.createFont(); //设置字体
    //curFont.setFontName("Times New Roman"); //设置英文字体
    curFont.setFontName("微软雅黑"); //设置英文字体
    curFont.setCharSet(Font.DEFAULT_CHARSET); //设置中文字体,那必须还要再对单元格进行编码设置
    curFont.setFontHeightInPoints((short)10); //字体大小
    curStyle.setFont(curFont);

    curStyle.setBorderTop(CellStyle.BORDER_THICK); //粗实线
    curStyle.setBorderBottom(CellStyle.BORDER_THIN); //实线
    curStyle.setBorderLeft(CellStyle.BORDER_MEDIUM); //比较粗实线
    curStyle.setBorderRight(CellStyle.BORDER_THIN); //实线

    curStyle.setWrapText(true); //换行
    curStyle.setAlignment(CellStyle.ALIGN_RIGHT); //横向具右对齐
    curStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); //单元格垂直居中

    return curStyle;
    }


    }

    package poi;

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    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.junit.Test;

    /**
    * @Description: poi瀹炵幇杈撳嚭淇℃伅鍒癳xcel鏂囦欢
    * @Author: nutony
    * @Date: 2013-05-15
    */
    public class Test1HFFS {
    @Test
    public void rule() throws FileNotFoundException, IOException{
    String xlsFile = "c:/poiHFFS.xls";
    HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(xlsFile));

    System.out.println("鍏卞垱寤哄�灏戞牱寮廫t"+wb.getNumCellStyles());
    System.out.println("鍏卞垱寤哄�灏戝瓧浣揬t"+wb.getNumberOfFonts());

    HSSFSheet sheet = wb.getSheetAt(0);

    System.out.println("鍏卞�灏戝悎骞跺崟鍏冩牸 "+sheet.getNumMergedRegions());
    System.out.println("璧峰�琛屾暟 "+sheet.getFirstRowNum());
    System.out.println("缁撴潫琛屾暟 "+sheet.getLastRowNum()+1);

    }

    @Test
    public void print() throws Exception{
    String xlsFile = "c:/poiHFFS.xls";

    //STEP 1:鎵撳紑excel鏂囦欢
    HSSFWorkbook wb = new HSSFWorkbook(); //鍒涘缓excel鏂囦欢
    //HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(xlsFile)); //鎵撳紑宸插瓨鍦ㄧ殑excel鏂囦欢

    //STEP 2:鎵撳紑褰撳墠宸ヤ綔绨�
    HSSFSheet sheet = wb.createSheet("鎴戠殑绗�竴涓�伐浣滅翱"); //寤虹珛鏂扮殑sheet瀵硅薄
    //HSSFSheet sheet = wb.getSheetAt(0); //閫夋嫨绗�竴涓�伐浣滅翱
    //wb.setSheetName(0, "鎴戠殑绗�竴涓�伐浣滅翱"); //璁剧疆宸ヤ綔绨跨殑鍚嶇О

    HSSFRow nRow = null;
    HSSFCell nCell = null;

    //STEP 3:鍒涘缓琛屽�璞�
    nRow = sheet.createRow((short)1); //绗�琛�

    //STEP 4:鎸囧畾鍒�鍒涘缓鍗曞厓鏍煎�璞�
    nCell = nRow.createCell((short)(2)); //绗�鍒�

    //STEP 5:鎸囧畾鍒�鍒涘缓鍗曞厓鏍煎�璞�
    nCell.setCellValue("鎴戞槸鍗曞厓鏍�);

    //STEP 6:璁剧疆鏍峰紡
    nCell.setCellStyle(leftStyle(wb));

    //STEP 7:鍏抽棴淇濆瓨excel鏂囦欢
    FileOutputStream fOut = new FileOutputStream(xlsFile);
    wb.write(fOut);
    fOut.flush();
    fOut.close();

    System.out.println("finish.");
    }


    //璁剧疆鍗曞厓鏍兼牱寮�
    private HSSFCellStyle leftStyle(HSSFWorkbook wb){
    HSSFCellStyle curStyle = wb.createCellStyle();
    HSSFFont curFont = wb.createFont(); //璁剧疆瀛椾綋
    //curFont.setFontName("Times New Roman"); //璁剧疆鑻辨枃瀛椾綋
    curFont.setFontName("寰�蒋闆呴粦"); //璁剧疆鑻辨枃瀛椾綋
    curFont.setCharSet(HSSFFont.DEFAULT_CHARSET); //璁剧疆涓�枃瀛椾綋锛岄偅蹇呴』杩樿�鍐嶅�鍗曞厓鏍艰繘琛岀紪鐮佽�缃�
    curFont.setFontHeightInPoints((short)10); //瀛椾綋澶у皬
    curStyle.setFont(curFont);

    curStyle.setBorderTop(HSSFCellStyle.BORDER_THICK); //绮楀疄绾�
    curStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //瀹炵嚎
    curStyle.setBorderLeft(HSSFCellStyle.BORDER_MEDIUM); //姣旇緝绮楀疄绾�
    curStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); //瀹炵嚎

    curStyle.setWrapText(true); //鎹㈣�
    curStyle.setAlignment(HSSFCellStyle.ALIGN_RIGHT); //妯�悜鍏峰彸瀵归綈
    curStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); //鍗曞厓鏍煎瀭鐩村眳涓�

    return curStyle;
    }

    }

  • 相关阅读:
    Golang——内存分区理解:代码区、数据区、堆区、栈区
    Golang基础——工程管理:同一目录和不同目录的文件引用
    Golang基础——函数,作用域,匿名函数,递归
    pandas 学习
    git学习
    Golang基础——跳转语句 break,continue,goto
    Golang基础——for循环
    Golang基础——if语句,switch语句
    while你爱不爱我
    js判断年份
  • 原文地址:https://www.cnblogs.com/songyunxinQQ529616136/p/6551283.html
Copyright © 2011-2022 走看看