国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

解析excel表格的數據放入List中

freecode / 2970人閱讀

摘要:文件路徑文件名開始行號從開始開始列號從開始型小數據點保留位數,如從開始取得最后一行的行號行循環開始行中間如果有空行,則退出每行的最后一個單元格位置列循環開始解析文件出錯為一個類封裝了頁面的參數如下說明參數封裝創建人修改時間年月日多參數列表

/**
     * 
     * @param filepath 文件路徑
     * @param filename 文件名
     * @param startrow 開始行號 從0開始
     * @param startcol 開始列號 從0開始
     * @param sheetnum sheet
     * @param format double型小數據點保留位數,如: #.##
     * @return
     */
    public static List readExcel(String filepath, String filename, int startrow, int startcol, int sheetnum, String format) throws Exception {
        List varList = new ArrayList();

        try {
            HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(new File(filepath, filename)));
            HSSFSheet sheet = workbook.getSheetAt(sheetnum);                     //sheet 從0開始
            int rowNum = sheet.getLastRowNum() + 1;                     //取得最后一行的行號

            for (int i = startrow; i < rowNum; i++) {                    //行循環開始
                PageData varpd = new PageData();
                HSSFRow row = sheet.getRow(i);                             //行
                if(row==null) break; //中間如果有空行,則退出
                int cellNum = row.getLastCellNum();                     //每行的最后一個單元格位置

                for (int j = startcol; j < cellNum; j++) {                //列循環開始
                    HSSFCell cell = row.getCell(Short.parseShort(j + ""));
                    String cellValue = getCellValue(cell, format);
                    varpd.put("var"+j, cellValue);
                }
                varList.add(varpd);
            }
            workbook.close();
        } catch (Exception e) {
            logger.error("解析Excel文件出錯", e);
            throw e;
        }
        return varList;
    }

PageData為一個類封裝了頁面的參數:如下

/** 
 * 說明:參數封裝Map
 * 創建人:
 * 修改時間:2014年9月20日
 * @version
 */

    public class PageData extends HashMap implements Map{
        
        private static final long serialVersionUID = 1L;
        
        protected Map map = null;
        private HttpServletRequest request;
        
        public PageData(HttpServletRequest request){
            this.request = request;
            Map properties = request.getParameterMap();
            Map returnMap = new HashMap(); 
            Iterator> entries = properties.entrySet().iterator(); 
            Map.Entry entry; 
            String name = "";  
            String value = "";  
            while (entries.hasNext()) {
                entry = entries.next(); 
                name = (String) entry.getKey(); 
                Object valueObj = entry.getValue(); 
                if(null == valueObj){ 
                    value = ""; 
                }else if(valueObj instanceof String[]){ 
                    // String[] values = (String[])valueObj;
                    // for(int i=0;i map){
            this.map = map;
        }
        
        public PageData() {
            map = new HashMap();
        }
        
        @Override
        public Object get(Object key) {
            Object obj = null;
            if(map.get(key) instanceof Object[]) {
                Object[] arr = (Object[])map.get(key);
                obj = request == null ? arr:(request.getParameter((String)key) == null ? arr:arr[0]);
            } else {
                obj = map.get(key);
            }
            return obj;
        }
        
        public String getString(String key) {
            Object obj = get(key);
            String value = null;
            if(null != obj) {
                value = ((String) obj).trim();
            }
            return value;
        }
        
        @Override
        public Object put(String key, Object value) {
            return map.put(key, value);
        }
        
        @Override
        public Object remove(Object key) {
            return map.remove(key);
        }
    
        public void clear() {
            map.clear();
        }
    
        public boolean containsKey(String key) {
            // TODO Auto-generated method stub
            return map.containsKey(key);
        }
    
        public boolean containsValue(Object value) {
            // TODO Auto-generated method stub
            return map.containsValue(value);
        }
    
        public Set> entrySet() {
            // TODO Auto-generated method stub
            return map.entrySet();
        }
    
        public boolean isEmpty() {
            // TODO Auto-generated method stub
            return map.isEmpty();
        }
    
        public Set keySet() {
            // TODO Auto-generated method stub
            return map.keySet();
        }
    
        public void putAll(Map t) {
            // TODO Auto-generated method stub
            map.putAll(t);
        }
    
        public int size() {
            // TODO Auto-generated method stub
            return map.size();
        }
    
        public Collection values() {
            // TODO Auto-generated method stub
            return map.values();
        }
        
    }
           
               
                                           
                       
                 
            
                     
             
               

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/66720.html

相關文章

  • vue.js如何導出Excel表格

    摘要:有一個項目需求,要求在前端項目中導出表格,經過查找代碼確實可以實現,具體實現步驟為安裝依賴導入兩個下載和,在目錄下新建文件夾,里面放入和兩個文件在引入這兩個文件在組件中使用導出的方法序號昵稱姓名上面設置的表格第一行的標題上面的是里對 有一個項目需求,要求在前端項目中導出Excel表格,經過查找代碼,Vue.js確實可以實現,具體實現步驟為: 1.安裝依賴 npm install -S ...

    lunaticf 評論0 收藏0
  • 批量導入數據excel表格)寫入數據

    摘要:批量導入數據庫思想之一頁面上傳表格后臺解析表格的數據暫放數據結構中或自己看情況處理,再把里面的數據批量存入數據庫。 批量導入數據庫思想之一:頁面上傳excel表格后臺解析excel表格的數據暫放數據結構中(list或Map,自己看情況處理),再把list里面的數據批量存入數據庫。直接貼代碼: 前端: 文件描述: ...

    darkbaby123 評論0 收藏0
  • vue導入處理Excel表格功能步驟實例

      1. 前言  本篇文章就是為大家講講前端導入并處理excel表格的情況,順便講講vue導入并處理excel數據;也總結下使用工具。  2.vue導入Excel表格  vue導入Excel表格主要有兩種常用的方法,一個是借助ElementUI文件上傳進行表格導入,另一個是自帶的input做文件上傳;以下對兩個方法做詳細介紹;  2.1 使用ElementUI中的upload組件  安裝Eleme...

    3403771864 評論0 收藏0
  • Vue+Element前端導入導出Excel

    摘要:前言業務場景由前臺導入表格,獲取批量數據。根據一個數組導出表格。每一個值是個對象,包含了兩個屬性。由于本人將和放到了同一級,這里引入是這樣的。這幾個文件不支持引入,所以需要來將他們掛載到全局環境下。若不足之處,歡迎大家指出,共勉。 1 前言 1.1 業務場景 由前臺導入Excel表格,獲取批量數據。 根據一個數組導出Excel表格。 2 實現原理 2.1 引入工具庫 file-save...

    NikoManiac 評論0 收藏0
  • Springboot+poi導出Excel

    摘要:通過這個字段設置表名的編碼格式,從而兼容不同瀏覽器。獲取對象放入中字段名五總結設置樣式的話可根據需求進行調整,這個過程比較費時,導出條數據,無樣式在左右,有樣式需要分鐘。 Springboot+poi導出Excel 一、引入jar包 注意需要引入3.8版本,POI3.8提供了SXSSFWorkbook類,來處理大數據內存溢出的問題.可設置默認內存大小,多出的部分可存入硬盤中,不會內存溢...

    CHENGKANG 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<