1. 程式人生 > >excel去除空行

excel去除空行

int emptyCell=0;
for(Cell cell:row){
  String cellStringValue = getStringValue(cell);
if(StringUtils.isBlank(cellStringValue)
emptyCell++;

}

============csdn上下的=======================================

//使用poi,用java實現清除excel工作簿內容之間空行
public void delLineNull(String infileName) {
        System.out.println("開始移除空行操作");
        
        int key = 0;
        int MaxRowNum = 0,MaxCellNum = 0;
        try {
               FileInputStream in = new FileInputStream(infileName);
                POIFSFileSystem fs = new POIFSFileSystem(in);
                HSSFWorkbook workbook = new HSSFWorkbook(fs);
                FileOutputStream out = new FileOutputStream("D:\\ee.xls");
                int number = workbook.getNumberOfSheets();
                for (int i = 0; i < number; i++) { // 對每個sheet檢查空行
                 HSSFSheet sheet = workbook.getSheetAt(i); //14
                 System.out.println("正在對工作簿:" + sheet.getSheetName() + " 移除空行操作 行數"
                        + (sheet.getLastRowNum() + 1));
                 MaxRowNum = 0;
                for (int k = 0; k <= sheet.getLastRowNum(); k++) {
                    HSSFRow hRow = sheet.getRow(k);
                    //System.out.println((k + 1) + "行");
                    if (isBlankRow(hRow)) // 找到空行索引
                    {
                        int m = 0;
                        for (m = k + 1; m <= sheet.getLastRowNum(); m++) {
                            HSSFRow nhRow = sheet.getRow(m);
                            if (!isBlankRow(nhRow)) {
                                //System.out.println("下一個非空行" + (m + 1));
                                sheet.shiftRows(m, sheet.getLastRowNum(), k - m);
                                break;
                            }
                        }
                        if (m > sheet.getLastRowNum())
                            break; // 此工作簿完成
                    } else { //非空行
                        MaxRowNum ++;
                        if(MaxCellNum < hRow.getLastCellNum())
                            MaxCellNum = hRow.getLastCellNum();
                    }
                }
                workbook.setPrintArea(i, 0, MaxCellNum, 0, MaxRowNum);
                System.out.println("移除空行操作完成 "+sheet.getSheetName()+" 有效行數 "+MaxRowNum);
                }
        workbook.write(out);
        in.close();
        out.close();
    }catch (IOException e) {
        System.out.println(key+" "+e.getMessage()+" ");
        e.printStackTrace();
        
    }
    
    System.out.println("移除空行操作完成");
    }
/**
* 判斷excel 空行
*/
public boolean isBlankRow(HSSFRow row) {
        if (row == null)
            return true;
        for (int i = row.getFirstCellNum(); i < row.getLastCellNum(); i++) {
            HSSFCell hcell = row.getCell(i);
            if (!isBlankCell(hcell))
                return false;
        }
        return true;
    }
/**
* 判斷excel 空單元格
/
public boolean isBlankCell(HSSFCell hcell) {
        if (hcell == null)
            return true;
        hcell.setCellType(hcell.CELL_TYPE_STRING);
        String content = hcell.getStringCellValue().trim();
        if (content == null || "".equals(content)) // 找到非空行
        {
            return true;
        }
        return false;
    }




========================  WorkbookFactory  ====================================

相關推薦

excel去除

int emptyCell=0; for(Cell cell:row){   String cellStringValue = getStringValue(cell); if(StringUtils.isBlank(cellStringValue) emptyCell++; } ============cs

sublime 中用正則 去除、html註釋和js註釋

1.去除空行CTRL+H開啟replace功能,勾選上左側的regular expression,並填寫 find what欄 : \s+$  (正則表示式)replace with欄 : (這行留空) 接著點replace all即可2.去除html註釋CTRL+H開啟re

Notepad++ 去除

com 空格 wid space 需要 ddn gif 空行 not Notepad++去除空行:編輯->行操作->移除空行/移除空行(包括空白字符) 移除空行 移除空行(包括空白字符) 註意:如果空行中有空白字符(如:空格)則使用“移除空行”無效,需要

Python讀寫excel練習_去除excel中亂碼,並添加列

寫入excel continue delete val value urn com date add 需求: 把app_student.xls裏面的數據, 1、如果這一行數據裏面有亂碼(及包含?),那麽就刪掉 2、再加上一列,是否畢業 3、如果班級是天蠍座

文檔好多,怎麽批量去除呢?

網頁 問題: strip shu itl 就是 ade 其中 自動切換 作為文員,不可避免的要經常從網上查找一些文字材料。在整理這些資料的時候,除了要選擇合適的復制粘貼技巧外(傳送門:復制粘貼學問多),可能很多人還會遇到這樣的問題: 將網頁中的文字復制到Word文

去除檔案中的

def clear_space(): with open("test","r",encoding="utf-8") as fr: for line in fr: line = line.strip() if len(line) &g

解決POI讀取Excel如何判斷是不是為

在作Excel表匯入資料庫的時候要統計成功匯入了多少條,失敗了多少條。 問題一:Excel表裡有225行,只有3行是有資料的,但是我在讀Excel表的時候它連沒有資料的行也讀進來了。 問題二:如果你是選擇這個行,然後按del鍵del的,那麼這樣判斷就是不為空(雖然用del來刪除資料,但是實際上物件都還在,

Excel批量去除的前面幾個字元

介面操作: 點選”資料“選項卡中的”分列“; 選擇固定寬度,點選下一步; 選擇箭頭直線,點選下一步; 選“不匯入此列(跳過)”,再點完成。 公式去除(去除前三位): 另起一列輸入公式:=RIGHT(A1,LEN(A1)-3) 再複製選擇性貼上。

解決poi檔案匯入java.lang.NullPointerException異常的處理方法(解析excel檔案的時候表格中間或結束出現

Row titleRow = sheet.getRow(0);//標題行 for(int i=1;i<rowCount;i++){//遍歷行,略過標題行,從第二行開始 Row row = sheet.getRow(i); //跳過空行

java使用poi刪除excel中的

開發十年,就只剩下這套架構體系了! >>>   

在GridView中的每一頁末尾添加

stat new eight bold tro type creat font grid 原文發布時間為:2008-08-03 —— 來源於本人的百度文章 [由搬家工具導入] protected void GridView1_RowCreated(object sender

【技巧】如何使用UltraEdit刪掉某些並且不留

image 文件中 空行 ultraedit png ultra blog 如何 正則表達 例: 在S1這個文件中我想要把所有B6 96 FD 2E 49 96 2 D2的行刪掉。 首先,查找這些序列,執行替換命令,替換為的內容不寫。 點擊“全部替換”之後,發現在原來的位

thymeleaf switch在表格中的使用,遇到的問題

表格 一位 bsp max hidden 在外 data 小數 輸入 switch在表格中的使用時 如果把<td>寫在<div th:switch="${data.isShow}"> 裏面導致外面出現很多空的<div><p>&

python3 寫CSV文件多一個的解決辦法

bsp eggs line 參數 lov blog mini csv span Python文檔中有提到: open(‘eggs.csv‘, newline=‘‘) 也就是說,打開文件的時候多指定一個參數。Python文檔中也有這樣的示例: import csvwith

c++讀取文本文件的一個極其容易忽略的問題

lac 文件內容 close urn 文本 原創 知識庫 nts report C++用fstream打開文件之後,讀一次文件後,再次讀該文件卻怎樣也不能將文件的指針置到開頭? 2012-12-20 07:41 2859人閱讀 評論(0) 收藏 舉報 分類: c

linux命令(44):去掉 所有文件中的

sed linux 空白字符 所有 包括 txt 指正 壓縮 strong 方法一:利用grep grep -v ‘^\s*$‘ test.txt 註:-v表示將匹配的結果進行反轉,正則表達式匹配空行。(空行可包括空格符制表符等空白字符) 方法二:利用sed sed ‘/^

scrapy1.4的csv輸出時出現問題的源碼修復-patch

scrapy1.4的csv輸出補丁修復 patch篇進入scrapy相關輸出csv的源碼路徑我的路徑為:D:\Python35\Lib\site-packages\scrapy編輯該路徑下的exporters.py文件,並修改的內容如下:class CsvItemExporter(BaseItemExport

過濾文件中的解決方法

linux方法1:基礎方法[[email protected] ~]# grep -v "^$" oldboy.txt[[email protected] ~]# sed ‘/^$/d‘ oldboy.txt[[email protected] ~]# awk ‘!/^$/‘ o

Excel 2010 統計

image .cn 技術 src aid href 一行 htm bsp 1. 首先選擇一個空行 2.然後點擊如下:公式 --- 3. 第一行:填寫“103”,當然我也不能明白為啥填寫103。照做就是了。 4.鼠標定位到 第二行 “Ref1”位置,然後

php CI框架輸出問題排查

定位 比較 blog tar 依次 框架 輸出結果 mage 由於   今天在使用 curl 命令行工具調試一個功能時,發現輸出的內容總是會在最開始莫名其妙的多一行空行:   項目框架是 php 的 CodeIgniter,感覺這種問題在網上不好查找,因為可以確定這個是業