使用场景:
以Excel为报表模板时,使用字母列名对用户比较直观,但JXL操作时使用的是数字序列。
以下算法是转换方法。支持AA,AB,ABCD的转换。
/**
* 将EXCEL中A,B,C,D,E列映射成0,1,2,3
* @param col
* @return
*/
private static int getExcelCol(String col){
col = col.toUpperCase();
//从-1开始计算,字母重1开始运算。这种总数下来算数正好相同。
int count = -1;
char[] cs = col.toCharArray();
for(int i=0;i<cs.length;i++)
{
count += (cs[i]-64 ) * Math.pow(26, cs.length-1-i);
}
return count;
}
本文介绍了一种用于将Excel中的字母列名(AA, AB等)转换为对应的数字序列(0, 1, 2等)的算法,以便于在如JXL等工具中进行操作。该算法支持多种复杂的列名转换。

5194

被折叠的 条评论
为什么被折叠?



