读取excel的demo

 背景:经常会受到一些临时性的批量发短信的任务。

MAVEN依赖:

<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.9</version>
</dependency>

 1 import java.io.File;
 2 import java.io.FileInputStream;
 3 import java.io.InputStream;
 4 import java.util.Iterator;
 5 
 6 import org.apache.poi.hssf.usermodel.HSSFCell;
 7 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 8 import org.apache.poi.ss.usermodel.Cell;
 9 import org.apache.poi.ss.usermodel.Row;
10 import org.apache.poi.ss.usermodel.Sheet;
11 import org.apache.poi.ss.usermodel.Workbook;
12 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
13 import org.springframework.util.LinkedMultiValueMap;
14 import org.springframework.util.MultiValueMap;
15 
16 import com.hundsun.moz62.mgudon.common.util.RestTemplateUtil;
17 import com.hundsun.moz62.mgudon.sms.model.SmsParamConstants;
18 
19 public class ReadExcel {
20 
21     private static final String SUFFIX_2003 = ".xls";
22     private static final String SUFFIX_2007 = ".xlsx";
23     static String url="***"; 
24     static String content="***"; 
25 
26     public static void main(String[] args) throws Exception {
27         int i=0;
28         String mFilePath = "C:/Users/zengao15141/Desktop/test.xlsx";
29         File file = new File(mFilePath);
30         InputStream is = new FileInputStream(file);
31 
32         Workbook workbook = null;
33         // 根据后缀,得到不同的Workbook子类,即HSSFWorkbook或XSSFWorkbook
34         if (mFilePath.endsWith(SUFFIX_2003)) {
35             workbook = new HSSFWorkbook(is);
36         } else if (mFilePath.endsWith(SUFFIX_2007)) {
37             workbook = new XSSFWorkbook(is);
38         }
39 
40         // 解析第一个Sheet
41         Sheet sheet = workbook.getSheetAt(0);
42         Row row;
43         Iterator<Row> iteratorR = sheet.iterator();
44         while(iteratorR.hasNext()) {
45             row = iteratorR.next();
46             //由于第一行是标题,因此这里单独处理
47             Cell cell;
48 
49             //利用迭代器得到每一个cell
50             Iterator<Cell> iteratorC = row.iterator();
51             while (iteratorC.hasNext()) {
52                 cell = iteratorC.next();
53 
54                 //定义每一个cell的数据类型
55                 cell.setCellType(HSSFCell.CELL_TYPE_STRING);
56                 i++;
57                 //取出cell中的value
58                 String mobile = cell.getStringCellValue();
59                // sendMessage(mobile,content);
60                 System.out.println(mobile);
61             }
62 
63         }
64         System.out.println(i);
65         //sendMessage("**",content);
66     }
67     
68 }
View Code

猜你喜欢

转载自www.cnblogs.com/zengao/p/9239552.html