private int ColumnToIndex(string column) { if (!Regex.IsMatch(column.ToUpper(), @"[A-Z]+")) { throw new Exception("Invalid parameter"); } int index = 0; char[] chars = column.ToUpper().ToCharArray(); for (int i = 0; i < chars.Length; i++) { index += ((int)chars[i] - (int)'A' + 1) * (int)Math.Pow(26, chars.Length - i - 1); } return index; }
//传入数字返回字母 private string convertToCharacter(int i) { char[] list = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray(); StringBuilder sb = new StringBuilder(); while ((i - 1) / 26 != 0) { sb.Append(list[i / 26 - 1]); i = i % 26; } i = (i - 1) % 26; sb.Append(list[i]); return sb.ToString(); }
浙公网安备 33010602011771号