我想知道导入EXCEL时当前列所对应的上面的(A,B,C,D,E,F,G)的字母;怎样写代码??
解决方案 »
- VS里这个背景色怎么调?
- WPF 调用线程无法访问此对象,因为另一个线程拥有该对象
- 又是一个:找不到类型或命名空间名称“Excel”
- 如何实现定时提醒
- 显示窗体问题~那个窗体就停在那边,甚至变成白色,没反应了~是怎么回事呀~~
- 用同步 socket 建立多线程 ,出现异常:通常每个套接字地址 (协议/网络地址/端口)只允许使用一次
- insert点击一次却插入两次,找了很久没有找到哪儿的问题..
- 如何获取未初始化变量的类型?
- 100求助!!!有没有类似于QQ秀一样在模型上穿戴衣服的c#源码?
- 关于拆分字符串的效率问题。
- 数据类型转换
- 'axMSComm1.Output' 擲回型別 'System.Runtime.InteropServices.COMException' 的例外狀況
System.Data.OleDb.OleDbConnection Conn = new System.Data.OleDb.OleDbConnection(strCon);
string strCom = "SELECT * FROM [Sheet1$]";
Conn.Open();
System.Data.OleDb.OleDbDataAdapter myCommand = new System.Data.OleDb.OleDbDataAdapter(strCom, Conn);
DataSet ds = new DataSet();
myCommand.Fill(ds, "[Sheet1$]");
Conn.Close();foreach (DataColumn dc in ds.Tables[0].Columns)
{
str+=dc.ColumnName.ToString();
}
不过用JAVA 实现的 你可以翻译成你需要的代码
public static String getExcelColumnLabel(int num){
String temp="";
double i=Math.floor(Math.log(25.0*(num)/26.0+1)/Math.log(26))+1;
if(i>1){
double sub=num-26*(Math.pow(26, i-1)-1)/25;
for(double j=i;j>0;j--){
temp= temp+(char)(sub/Math.pow(26, j-1)+65);
sub=sub%Math.pow(26, j-1);
}
}else{
temp= temp+(char)(num+65);
}
return temp;
}参数num代表的是 第几列 我这里是从0开始 ,如果你是从1开始的话调用时需要减去1
比如你要 得出第27列的标题 参数因该输入27-1=26
那调用的 方式如下
String label=getExcelColumnLabel(26);
结果是: AA本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Mars_Yuan/archive/2010/05/05/5560746.aspx