2016-06-22 19 views
1

Apache POIを使用してJavaのExcelから '120%'値を抽出する必要があります。私は失敗したCELL_TYPE_NUMERICとCELL_TYPE_STRINGを使ってみましたが、結果は120%ではなく1.2でした。JavaでExcelからの入力を読み取る方法は?

N:120%の作品の前にアポストロフィ( ')を使用したが、タイプをチェックした後

if(row.getCell(j)!=null) 
{ 
    if(row.getCell(j).getCellType() ==row.getCell(j).CELL_TYPE_NUMERIC) 
    { 
     System.out.print(row.getCell(j).toString()); 
    } 
    else if(row.getCell(j).getCellType() == row.getCell(j).CELL_TYPE_STRING) 
    strCellValue ==System.out.print(row.getCell(j).toString());        
    } 
} 
else System.out.print("null") 
+1

コードの関連部分を提供します。 – ManishChristian

+0

@ManishChristian IF(row.getCell(J)!= NULL){ \t IF(row.getCell(J).getCellType()== row.getCell(J).CELL_TYPE_NUMERIC) \t {\t \t System.out.print(row.getCell(j).toString()); (row.getCell(J).getCellType()== row.getCell(J).CELL_TYPE_STRING)場合 \t} 他\t \t {\t \t strCellValue = \t \t System.out.print(row.getCell( j).toString());他 \t}} System.out.print(「ヌル」) –

+1

あなたは。これは私がしようとしているものです – alexbt

答えて

0

あなたはこのような何かを試すことができます。

if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) { 
    if (cell.getCellStyle().getDataFormatString().contains("%")) { 
     // Detect Percent Values 
     Double value = cell.getNumericCellValue() * 100; 
     System.out.println("Percent value = " + value.toString() +"%"); 
    } else { 
     Double value = cell.getNumericCellValue(); 
     System.out.println("Non percent value = " + value.toString()); 
    } 
} 
+0

コードブラケットの内側にあなたの質問にあなたのコードを追加してください可能性があり、助けのおかげ@Manish –

+0

はうれしいです他の人があなたに答えを知ってもらうように答えを受け入れてください(http://stackoverflow.com/help/accepted-answer)。 – ManishChristian

0

の周りに別の仕事を提案してください、あなたは種類に応じて値を取得する必要があります。

if (cell.getCellType() == Cell.CELL_TYPE_STRING) { 
    String value = cell.getStringCellValue(); 
} 

単にtoString()を呼び出すだけで作業できません。あなたのコードは次のようにする必要があります:

if (row.getCell(j).getCellType() == row.getCell(j).CELL_TYPE_NUMERIC) { 
    System.out.print(row.getCell(j).getNumericCellValue() 
} else if (row.getCell(j).getCellType() == row.getCell(j).CELL_TYPE_STRING) { 
    strCellValue = row.getCell(j).getStringCellValue(); 
} 
関連する問題