Java实现的Excel列号数字与字母互相转换功能
本文实例讲述了Java实现的Excel列号数字与字母互相转换功能。分享给大家供大家参考,具体如下:
我们在实现对Excel的导入导出的时候,往往需要准确的给用户提示信息,提示到具体的Excel的单元格,这里就需要对Excel的列号进行数字和字母的转换,今天正好用到这个需求,所以就写了一个demo,总结一下:
Java实现:
packagetest;
/**
*DealwithExcelcolumnindexToStrandstrToIndex
*@authorStephen.Huang
*@version2015-7-8
*/
publicclassExcelColumn{
publicstaticvoidmain(String[]args){
Stringcolstr="AA";
intcolIndex=excelColStrToNum(colstr,colstr.length());
System.out.println("'"+colstr+"'columnindexof"+colIndex);
colIndex=26;
colstr=excelColIndexToStr(colIndex);
System.out.println(colIndex+"columninexcelof"+colstr);
colstr="AAAA";
colIndex=excelColStrToNum(colstr,colstr.length());
System.out.println("'"+colstr+"'columnindexof"+colIndex);
colIndex=466948;
colstr=excelColIndexToStr(colIndex);
System.out.println(colIndex+"columninexcelof"+colstr);
}
/**
*Excelcolumnindexbegin1
*@paramcolStr
*@paramlength
*@return
*/
publicstaticintexcelColStrToNum(StringcolStr,intlength){
intnum=0;
intresult=0;
for(inti=0;i0){
columnIndex--;
}
columnStr=((char)(columnIndex%26+(int)'A'))+columnStr;
columnIndex=(int)((columnIndex-columnIndex%26)/26);
}while(columnIndex>0);
returncolumnStr;
}
}
测试结果:
‘AA'columnindexof27 26columninexcelofZ ‘AAAA'columnindexof18279 466948columninexcelofZNSN
更多关于java相关内容感兴趣的读者可查看本站专题:《Java操作Excel技巧总结》、《Java+MySQL数据库程序设计总结》、《Java数据结构与算法教程》、《Java文件与目录操作技巧汇总》及《Java操作DOM节点技巧总结》
希望本文所述对大家java程序设计有所帮助。