Apache POIを使用して、.xlsxファイルのすべてのセルで空白をnullとして返すにはどうすればよいですか?

Ivan Huang

StackOverflowでグーグルして検索した後、この質問に関連する場所が見つかりませんでした。現在、空白のセルをnullとして読み取ることができますが、一度に1つのセルしか読み取ることができません。だから私はこのようなものを書かなければなりません:

data.setAddress(row.getCell(10, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(10).getStringCellValue());
    data.setClientType(row.getCell(11, Row.RETURN_BLANK_AS_NULL) == null ? null : (int) row.getCell(11).getNumericCellValue());
    data.setClientType0Charge(row.getCell(12, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(12).getNumericCellValue());
    data.setClientType1Charge(row.getCell(13, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(13).getNumericCellValue());
    data.setCooYears(row.getCell(14, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(14).getNumericCellValue());
    data.setConYears(row.getCell(15, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(15).getNumericCellValue());
    data.setProjectType(row.getCell(16, Row.RETURN_BLANK_AS_NULL) == null ? null : (int) row.getCell(16).getNumericCellValue());
    data.setProjectTypeNotes(row.getCell(17, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(17).getStringCellValue());
    data.setChargeMethod(row.getCell(18, Row.RETURN_BLANK_AS_NULL) == null ? null : (int) row.getCell(18).getNumericCellValue());
    data.setFixedPrice(row.getCell(19, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(19).getNumericCellValue());
    data.setHighTime(row.getCell(20, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(20).getStringCellValue());
    data.setHighPrice(row.getCell(21, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(21).getNumericCellValue());
    data.setPeakTime(row.getCell(22, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(22).getStringCellValue());
    data.setPeakPrice(row.getCell(23, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(23).getNumericCellValue());
    data.setPlainTime(row.getCell(24, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(24).getStringCellValue());
    data.setPlainPrice(row.getCell(25, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(25).getNumericCellValue());
    data.setValleyTime(row.getCell(26, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(26).getStringCellValue());
    data.setValleyPrice(row.getCell(27, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(27).getNumericCellValue());
    data.setServFee(row.getCell(28, Row.RETURN_BLANK_AS_NULL) == null ? null : (int) row.getCell(28).getNumericCellValue());
    data.setServFeePercent(row.getCell(29, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(29).getNumericCellValue());
    data.setServFeeFixed(row.getCell(30, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(30).getNumericCellValue());
    data.setPropertyType(row.getCell(31, Row.RETURN_BLANK_AS_NULL) == null ? null : (int) row.getCell(31).getNumericCellValue());
    data.setPropertyOwner(row.getCell(32, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(32).getStringCellValue());
    data.setPropertyManager(row.getCell(33, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(33).getStringCellValue());
    data.setAcquireMethod(row.getCell(34, Row.RETURN_BLANK_AS_NULL) == null ? null : (int) row.getCell(34).getNumericCellValue());
    data.setAcquireMethodNotes(row.getCell(35, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(35).getStringCellValue());
    data.setSiteAddress(row.getCell(36, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(36).getStringCellValue());
    data.setSiteType(row.getCell(37, Row.RETURN_BLANK_AS_NULL) == null ? null : (int) row.getCell(37).getNumericCellValue());
    data.setSiteTypeNotes(row.getCell(38, Row.RETURN_BLANK_AS_NULL) == null ? null : row.getCell(38).getStringCellValue());

繰り返しに対する恨みの感覚があるので、これは私にはあまり良く見えません。Row.RETURN_BLANK_AS_NULLシート全体またはブック全体のセルどこかに普遍的に設定できますか?

ClumsyPuffin

これは、ワークブックレベルの欠落セルポリシーで設定できます。

    XSSFWorkbook book = new XSSFWorkbook("h:\\excel.xlsx");
    XSSFSheet sheet = book.getSheetAt(0);
    XSSFRow row = sheet.getRow(0);
    book.setMissingCellPolicy(Row.RETURN_BLANK_AS_NULL);

これが機能するのは、セル番号のみのgetcellの定義が次のようになっているためです(POIソースコードから)。

 @Override
    public XSSFCell getCell(int cellnum) {
        return getCell(cellnum, _sheet.getWorkbook().getMissingCellPolicy());
    }

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Apache POI HSSFを使用して、すべての数式セルを一度に更新するにはどうすればよいですか?

分類Dev

Apache POIを使用してXSSFTable列の並べ替え/フィルタリングを有効にするにはどうすればよいですか?

分類Dev

Apache POIを使用してExcelシートから特定のセルを検索して印刷するにはどうすればよいですか?

分類Dev

Apache poiを介してWordファイルのグローバルフォントを設定するにはどうすればよいですか?

分類Dev

apache poiを使用して行数に基づいてExcelファイルを複数のファイルに分割するにはどうすればよいですか?

分類Dev

Java(Selenium)セットアップでApache POIを使用して、複数のスレッド(並列テストケース)が同じExcelファイルに同時にアクセスするにはどうすればよいですか?

分類Dev

Apacheで単一の構成ファイルを使用して複数の仮想ホストを構成するにはどうすればよいですか?

分類Dev

Apacheで単一の構成ファイルを使用して複数の仮想ホストを構成するにはどうすればよいですか?

分類Dev

Apache POIを使用してセルをマージし、同時に値を設定するにはどうすればよいですか?

分類Dev

JavaでApache poiを使用してExcelで警告を削除するにはどうすればよいですか?

分類Dev

Apache Poi-Java-:Apache POIを使用してWord文書に個別の段落として空白行を含むテキストを追加するにはどうすればよいですか?

分類Dev

Apache POI XSSF 4.10でセルタイプを文字列として設定するにはどうすればよいですか?

分類Dev

Apache POI XSSF 4.10でセルタイプを文字列として設定するにはどうすればよいですか?

分類Dev

JavaでApache POIを使用してExcel(.xlsx)ファイルを作成すると、ファイルが破損する

分類Dev

Apache POIを使用してExcelドキュメントの領域をテーブルに変換するにはどうすればよいですか?

分類Dev

Apache Poiを使用してExcelファイルの空または空白のセルを処理する方法

分類Dev

Apache POI APIを使用してExcelセルがロックされているかどうかをどのように確認できますか?

分類Dev

JavaおよびApache POIを使用して、マップからの結果をxlsxファイルの空のセルに入力します

分類Dev

Apache poiを使用して.docxを生成するときに、フッターに間隔を追加するにはどうすればよいですか?

分類Dev

Apache POIを使用して画像のサイズを段落サイズに変更するにはどうすればよいですか?

分類Dev

Apache POIを使用してExcelファイルで列の名前を取得する

分類Dev

Apache POIを使用してWord文書の画像にハイパーリンクを追加するにはどうすればよいですか?

分類Dev

Apache POI を使用して xlsx ファイルに書き込み、ファイルの最後の列で予想される回答を取得する

分類Dev

セル幅よりも大きいセル値をマージしたApache-POIを使用してExcel行の高さを増やすにはどうすればよいですか?

分類Dev

Apache POIを使用してExcelファイルから列を取得するには

分類Dev

Apacheを使用してdjangoのデフォルトのApacheページを解決するにはどうすればよいですか?

分類Dev

apache poiを使用して特定のWord文書の色を変更するにはどうすればよいですか?

分類Dev

Apache POIを使用してExcelでセルを結合する

分類Dev

Apache POIを使用して.xlsファイルと.xlsxファイルの両方を読み取る方法はありますか?

Related 関連記事

  1. 1

    Apache POI HSSFを使用して、すべての数式セルを一度に更新するにはどうすればよいですか?

  2. 2

    Apache POIを使用してXSSFTable列の並べ替え/フィルタリングを有効にするにはどうすればよいですか?

  3. 3

    Apache POIを使用してExcelシートから特定のセルを検索して印刷するにはどうすればよいですか?

  4. 4

    Apache poiを介してWordファイルのグローバルフォントを設定するにはどうすればよいですか?

  5. 5

    apache poiを使用して行数に基づいてExcelファイルを複数のファイルに分割するにはどうすればよいですか?

  6. 6

    Java(Selenium)セットアップでApache POIを使用して、複数のスレッド(並列テストケース)が同じExcelファイルに同時にアクセスするにはどうすればよいですか?

  7. 7

    Apacheで単一の構成ファイルを使用して複数の仮想ホストを構成するにはどうすればよいですか?

  8. 8

    Apacheで単一の構成ファイルを使用して複数の仮想ホストを構成するにはどうすればよいですか?

  9. 9

    Apache POIを使用してセルをマージし、同時に値を設定するにはどうすればよいですか?

  10. 10

    JavaでApache poiを使用してExcelで警告を削除するにはどうすればよいですか?

  11. 11

    Apache Poi-Java-:Apache POIを使用してWord文書に個別の段落として空白行を含むテキストを追加するにはどうすればよいですか?

  12. 12

    Apache POI XSSF 4.10でセルタイプを文字列として設定するにはどうすればよいですか?

  13. 13

    Apache POI XSSF 4.10でセルタイプを文字列として設定するにはどうすればよいですか?

  14. 14

    JavaでApache POIを使用してExcel(.xlsx)ファイルを作成すると、ファイルが破損する

  15. 15

    Apache POIを使用してExcelドキュメントの領域をテーブルに変換するにはどうすればよいですか?

  16. 16

    Apache Poiを使用してExcelファイルの空または空白のセルを処理する方法

  17. 17

    Apache POI APIを使用してExcelセルがロックされているかどうかをどのように確認できますか?

  18. 18

    JavaおよびApache POIを使用して、マップからの結果をxlsxファイルの空のセルに入力します

  19. 19

    Apache poiを使用して.docxを生成するときに、フッターに間隔を追加するにはどうすればよいですか?

  20. 20

    Apache POIを使用して画像のサイズを段落サイズに変更するにはどうすればよいですか?

  21. 21

    Apache POIを使用してExcelファイルで列の名前を取得する

  22. 22

    Apache POIを使用してWord文書の画像にハイパーリンクを追加するにはどうすればよいですか?

  23. 23

    Apache POI を使用して xlsx ファイルに書き込み、ファイルの最後の列で予想される回答を取得する

  24. 24

    セル幅よりも大きいセル値をマージしたApache-POIを使用してExcel行の高さを増やすにはどうすればよいですか?

  25. 25

    Apache POIを使用してExcelファイルから列を取得するには

  26. 26

    Apacheを使用してdjangoのデフォルトのApacheページを解決するにはどうすればよいですか?

  27. 27

    apache poiを使用して特定のWord文書の色を変更するにはどうすればよいですか?

  28. 28

    Apache POIを使用してExcelでセルを結合する

  29. 29

    Apache POIを使用して.xlsファイルと.xlsxファイルの両方を読み取る方法はありますか?

ホットタグ

アーカイブ