2011-10-26 45 views
1

すべて、エクセルシートの最後の行をデータで検索 - Java

セルにデータが入力されたExcelシートの最後の行はどのようにして見つけることができますか?つまり

| C1 | C2 | C3 | C4 | 
--------------------------- 
R1 | 1  2 3  4 
R2 | 5  6 7  8 
R3 | 
R4 |  9 

上記の例では、行番号4に何かが設定されているため、合計行数を4として取得したいと考えています。

このようなライブラリ機能はありますか?また、Microsoft Officeドキュメント操作を処理するための最良のJavaライブラリは何ですか?

答えて

3

Excelドキュメントを処理するための最も一般的なJavaライブラリはApache POIです。

http://poi.apache.org/

彼らはあなたが必要なもののようにExcelで行を反復処理する機能を持つことになります。例を確認してください。非常に簡単です。あなたはそれが働いて得れば

、あなたのHSSFSheetオブジェクトを使用して呼び出す:あなたはすべての行を反復処理し、行に値が含まれている場合、その後、あなたはそれがあることを言いたい、LastRowNumを持ってhttp://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFSheet.html#getLastRowNum%28%29

ワン最後の行あなたが行う必要があるのは最後の行がうまくいけば、LastRowNumから始め、あなたの道を逆にしたいと思うかもしれません。

7

Apache POIでは、getLastRowNum()を使用できます。このSOスレッドから

InputStream myxls = new FileInputStream("test.xls"); 
Workbook book = new HSSFWorkbook(myxls); 
Sheet sheet = book.getSheetAt(0); 
System.out.println(sheet.getLastRowNum()); 

この例のようなものをFinding the last row in an Excel spreadsheet

+0

私はこのエラー「にjava.io.IOException:全体のヘッダを読み取ることができませんが、0バイトが読み取られ、512のバイトを期待」を得ます上記のスニペットを使用すると – happy

関連する問題