2011-01-20 39 views
8

trong khi truy xuất giá trị mà nó đưa ra theo định dạng số mũ cho số lớn.Cách in một số lớn hơn 7 chữ số bằng cách sử dụng poi (2,5) từ bảng excel trong bảng điều khiển bằng cách sử dụng java

while (cells.hasNext()) 
{ 
HSSFCell cell = cells.next(); 

System.out.println ("Cell No.: " + cell.getCellNum()); 

/* 
* Now we will get the cell type and display the values 
* accordingly. 
*/ 
switch (cell.getCellType()) 
{ 
case HSSFCell.CELL_TYPE_NUMERIC : 
{ 

    // cell type numeric. 
    System.out.println ("Numeric value: " + cell.getNumericCellValue()); 


    break; 
} 

nó đang đưa ra giá trị cho các con số có chữ số lớn hơn 7eg (12345678) như trong exponential.Can u giúp tôi lấy giá trị ở cùng định dạng.

Trả lời

5

Tôi muốn sử dụng phiên bản DecimalFormat.

DecimalFormat df = new DecimalFormat("#.00000000"); 
System.out.print(df.format(cell.getNumericCellValue())); 
5

Cách dễ nhất là sử dụng một BigDecimal:

System.out.println("Numeric value: " + new BigDecimal(cell.getNumericCellValue())); 
0

Trong gói org.apache.poi.ss.util là lớp NumberToTextConverter với thành viên tĩnh toText, có thể giúp để đại diện cho bất kỳ giá trị số như chuỗi. Ví dụ:

String value = NumberToTextConverter.toText(cell.getNumericCellValue()); 

P.S. Tôi biết rằng kể từ thời điểm đó khi câu hỏi đã được hỏi, đã trôi qua gần 5 năm. Nhưng tôi vẫn hy vọng quyết định của tôi sẽ giúp ai đó

Các vấn đề liên quan