1. 程式人生 > >C# EXCEL操作中數字和字串(列)轉換

C# EXCEL操作中數字和字串(列)轉換

//C#程式碼字串轉數字
int StringToNumber(string s)
{
int r = 0 ;
for (int i = 0; i < s.Length; i++)
{
r = r * 26 + s[i] - ‘A’ + 1;
}
return r;
}

//C#程式碼數字轉字串
static string NumbertoString(int n)
{
string s = “” ;
int r = 0 ;
while(n != 0)
{
r = n % 26 ;
char ch = ’ ’ ;
if(r == 0)
ch = ‘Z’ ;
else
ch = (char)(r - 1 + ‘A’);
s = ch.ToString() + s;
if(s[0] == ‘Z’)
n = n / 26 - 1 ;
else
n /= 26 ;
}
return s ;
}

//C++程式碼字串轉數字
int StringToNumber(string s)
{
int r = 0 ;
for (unsigned i = 0; i < s.length(); i++)
{
r = r * 26 + s[i] - ‘A’ + 1;
}
return r ;
}

//C++程式碼數字轉字串
string NumbertoString(int n)
{
string s = “” ;
int r = 0 ;
while(n)
{
r = n % 26 ;
char ch = ’ ‘;
if(r == 0)
ch = ‘Z’ ;
else
ch = r - 1 + ‘A’ ;
s.insert(0, 1, ch) ;
if(s[0] == ‘Z’)
n = n / 26 - 1 ;
else
n /= 26 ;
}
return s ;
}