2012-03-30 13 views
0

を使用してExcelの複数の異なる列を追加するためにどのように私はそれらのすべてのBooleanStringNumericまたはそれらの組み合わせをすることができ、それらの列にExcelの値と値のtwo columnsの組み合わせであることCodeKeyを生成する必要があります。のApache POI&Javaの

今私はif/else loopに行き、すべての条件を調べることができますが、これを行う効率的な方法は何でしょうか。例については

:私はExCode = 7VPrCode = A:を持っている場合は

その後、私のコードキーは7VA:

ExCode PrCode 
6D:  A: 
6R  TR 
7V  6K 

あるべきと私はやりたいことのすべては、それぞれ6D:A:6RTR7V6Kとしてコードキーを生成しています。 、コードキーを生成するために、これを行うのいずれかの他の効率的なソリューションif/else不要詰め込むの多くがあるだろうかだろうPOIのいずれかのapiがあるので

if(ExCodeCellValue.getCellType() == Cell.CELL_TYPE_STRING && 
      PrCodeCellValue.getCellType() == Cell.CELL_TYPE_STRING){ 
      System.out.println("Combined String Values: "+ExCodeCellValue.getStringValue()+PrCodeCellValue.getStringValue()); 
     } 

のような何かを行うにはしたくありませんこの場合に便利ですか?

答えて

1

DataFormatter.formatCellValue(cell)を使用すると、Excelのセルに一致する文字列が表示されるはずです。それと

、あなたは(ExCodeと仮定すると、第4に3列、PrCodeです)

// Do this once 
DataFormatter formatter = new DataFormatter(); 

// Once per row 
for (Row row : sheet) { 
    String exCode = formatter.formatCellValue(row.getCell(2)); 
    String prCode = formatter.formatCellValue(row.getCell(3)); 

    Cell code = row.createCell(4, Cell.CELL_TYPE_STRING); 
    code.setCellValue(exCode + prCode); 
} 
+0

おかげのようになります可能性があり、これは私が探していたものです。 – Rachel