最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java使用poi讀取excel內(nèi)容方法實例

 更新時間:2014年01月09日 08:54:24   作者:  
本文介紹java使用poi讀取excel內(nèi)容的實例,大家參考使用吧

復(fù)制代碼 代碼如下:

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.channels.FileChannel;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
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 FileOperator {
   public static void main(String[] args) throws Exception {
      String path = "F:\\1.xls";
   print(path);
     }

  public static void print(String path) throws IOException{
      BufferedInputStream in = new BufferedInputStream(
     new FileInputStream(new File(path)));
   POIFSFileSystem fs = new POIFSFileSystem(in);
   HSSFWorkbook wb = new HSSFWorkbook(fs);
   HSSFCell cell = null;
   HSSFSheet st = wb.getSheetAt(0);
   for (int rowIndex = 0; rowIndex <= st.getLastRowNum(); rowIndex++) {
    HSSFRow row = st.getRow(rowIndex);
    if (row == null) {
     continue;
    }
    for (short columnIndex = 0, size = row.getLastCellNum(); columnIndex <= size; columnIndex++) {
     cell = row.getCell(columnIndex);
     String value = "";
     if (cell != null) {
      // 注意:一定要設(shè)成這個,否則可能會出現(xiàn)亂碼
      cell.setEncoding(HSSFCell.ENCODING_UTF_16);
      switch (cell.getCellType()) {
      case HSSFCell.CELL_TYPE_STRING:
       value = cell.getStringCellValue();
       break;
      case HSSFCell.CELL_TYPE_NUMERIC:
       if (HSSFDateUtil.isCellDateFormatted(cell)) {
        Date date = cell.getDateCellValue();
        if (date != null) {
         value = new SimpleDateFormat("yyyy-MM-dd")
           .format(date);
        } else {
         value = "";
        }
       } else {
        value = new DecimalFormat("0").format(cell
          .getNumericCellValue());
       }
       break;
      case HSSFCell.CELL_TYPE_FORMULA:
       // 導(dǎo)入時如果為公式生成的數(shù)據(jù)則無值
       if (!cell.getStringCellValue().equals("")) {
        value = cell.getStringCellValue();
       } else {
        value = cell.getNumericCellValue() + "";
       }
       break;
      case HSSFCell.CELL_TYPE_BLANK:
       break;
      case HSSFCell.CELL_TYPE_ERROR:
       value = "";
       break;
      case HSSFCell.CELL_TYPE_BOOLEAN:
       value = (cell.getBooleanCellValue() == true ? "Y"
         : "N");
       break;
      default:
       value = "";
      }
      System.out.println(rowIndex + "," + columnIndex + ":"
        + value);
     }
     if (columnIndex == 0 && value.trim().equals("")) {
      break;
     }
    }
   }
     }

}

相關(guān)文章

  • Java11中的新增字符串APIs使用實例探究

    Java11中的新增字符串APIs使用實例探究

    這篇文章主要為大家介紹了Java11中的新增字符串APIs使用實例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • java線程中synchronized和Lock區(qū)別及介紹

    java線程中synchronized和Lock區(qū)別及介紹

    這篇文章主要為大家介紹了java線程中synchronized和Lock區(qū)別及介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • java實現(xiàn)多線程交替打印

    java實現(xiàn)多線程交替打印

    這篇文章主要為大家詳細介紹了java實現(xiàn)多線程交替打印,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • Java下SpringBoot創(chuàng)建定時任務(wù)詳解

    Java下SpringBoot創(chuàng)建定時任務(wù)詳解

    這篇文章主要介紹了Java下SpringBoot創(chuàng)建定時任務(wù)詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 封裝了一個Java數(shù)據(jù)庫訪問管理類

    封裝了一個Java數(shù)據(jù)庫訪問管理類

    剛剛試著用JDBC,仿著原來C#的寫法寫了這段代碼,自己覺得還是挺粗糙的,還煩請路過的朋友推薦一個寫得較好較完整的相關(guān)例程以便學(xué)習(xí)。謝謝!
    2009-02-02
  • Springboot實現(xiàn)XSS漏洞過濾的示例代碼

    Springboot實現(xiàn)XSS漏洞過濾的示例代碼

    這篇文章主要介紹了Springboot實現(xiàn)XSS漏洞過濾的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 解讀springboot配置mybatis的sql執(zhí)行超時時間(mysql)

    解讀springboot配置mybatis的sql執(zhí)行超時時間(mysql)

    這篇文章主要介紹了解讀springboot配置mybatis的sql執(zhí)行超時時間(mysql),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Java版仿QQ驗證碼風(fēng)格圖片驗證碼

    Java版仿QQ驗證碼風(fēng)格圖片驗證碼

    這篇文章主要為大家分享了java圖片驗證碼實例代碼,感興趣的小伙伴們可以參考一下
    2016-04-04
  • java中Object類4種方法詳細介紹

    java中Object類4種方法詳細介紹

    大家好,本篇文章主要講的是java中Object類4種方法詳細介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • Spring Boot 入門指南

    Spring Boot 入門指南

    Spring Boot 簡化了Spring 應(yīng)用的初始搭建、開發(fā)過程,開發(fā)人員可使用Spring提供的特定的方式來進行配置,不再需要重復(fù)自定義樣板化的配置。本文就將帶你入門Spring Boot
    2021-05-05

最新評論

年辖:市辖区| 松阳县| 商丘市| 惠安县| 常德市| 宝山区| 镇江市| 大足县| 赣州市| 永寿县| 措勤县| 镶黄旗| 新丰县| 仁布县| 天长市| 汉寿县| 大荔县| 日土县| 民丰县| 沁水县| 富锦市| 靖江市| 尚义县| 额敏县| 济南市| 天全县| 青川县| 德保县| 九台市| 长子县| 平安县| 汤阴县| 嘉荫县| 大足县| 苏尼特右旗| 辉县市| 廊坊市| 新安县| 航空| 福泉市| 郓城县|