//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("");
}
1 に答える
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() メソッドを使用して、部分文字列を安全な方法で取得できます (したがって、最大でも 1 文字しかかかりませんn
)。
String cell1= StringUtils.substring(cells.get(i,j).getValue().toString(), 0, 26);
于 2016-02-08T07:15:14.653 に答える