2017-04-05 12 views
-1

私は、columnという名前のArrayListをExcelファイルから追加します。しかし、私は問題がある場合は、列が短いです(他の列と同じくらい行がありません)empty Stringエラーが表示されます。異なる行数の列をExcelファイルから読み取るにはどうすればよいですか?

public initializingWorkbook(Sheet sheet,ArrayList <Double> column, int index) 
    { 
    int rows = sheet.getRows(); 
    for(int row = 1;row < rows;row++) 

     { 
      String i = sheet.getCell(index, row).getContents(); 
      column.add(Double.parseDouble(i)); 
     } 
    } 

。したがって、最初の6列は同じ数の行を持ち、test列は少なくなります。細胞のフォーマットはGeneralです。

+0

コードをデバッグしましたか?エラーが表示されたら 'i'は何ですか?次に、 'add'を実行する前に、あなたのStringをチェックしてください。 – IQV

+0

@IQV「ソースが見つかりません:ソース添付ファイルにSheetImpl.classファイルのソースが含まれていません」というエラーが表示され、 'jxl.jar'があるソースを選択できますが、それは働く。 – Catalin

+0

シートの例にエラーが発生した行を指定できますか?どの値に '空文字列 'のセルがありますか? – IQV

答えて

0

あなたは、実際の行が含まれているどのくらいの列、最初にチェックする必要があります。

{ 
if (index < sheet.getRow(row).length) { 
    String i = sheet.getCell(index, row).getContents(); 
    column.add(Double.parseDouble(i)); 
    } 
} 

sheet.getRow(int row)リターンこの行のすべてのセルを、それは細胞の配列です。したがって、返された配列の次元をチェックすることができます。

+0

'index'は選択された列の数であり、私は' 6'列しか持たず、各列にはたくさんの行があります(約 '40000')。 – Catalin

+0

サンプルによれば、6または7列。 – IQV

関連する問題