2016-02-08 50 views
-2
//for loop for traversing rows 
for (int i = 1 ; i < roorws.getCount() ; i++) 
     { // for loop for traversing columns 
      for (int j = 1 ;j<tcols ; j++) 
      { //if column is 5 
       if(j==5) 

       //printing values of cell 5 

       System.out.print(cells.get(i,j).getValue().toString().substring(0, 26).length()+ "\t"); 
       String cell1=cells.get(i,j).getValue().toString().substring(0, 26); 

       cell=cells.get("F2"); 
       cell.putValue(cell1); 
      } 
     System.out.println(""); 
     } 
+2

看起來你串縮短超過26個charachters:子(0,26)。 – Jens

+0

我認爲印刷完成的路線。我確信在單元格中有一個不超過26個字符長度的字符串值。 – cdaiga

回答

0

顯然,字符串的長度不是(至少)26個字符。變化:

System.out.print(cells.get(i,j).getValue().toString().substring(0, 26).length()+ "\t"); 

到:

System.out.print(cells.get(i,j).getValue().toString().length()+ "\t"); 

打印字符串的長度。

您可以使用Apache Commons StringUtils substring() method獲得子串在一個安全的方式(因此只需要最多n字符):

String cell1= StringUtils.substring(cells.get(i,j).getValue().toString(), 0, 26); 
相關問題