zoukankan      html  css  js  c++  java
  • Excel列字母和数字的转换

    网上看的,收藏备用

    //用于excel表格中列号字转成数字,返回的列号索引从1开始
            public  int ToIndex(string columnName)
            {
                if (!Regex.IsMatch(columnName.ToUpper(), @"[A-Z]+"))
                    throw new Exception("Invalid parameter");
                int index = 0;
                char[] chars = columnName.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;
            }
    
     //用于将数字转成excel表格中列号字母,返回的列号索引从A开始,从A对应1开始
            public string ToName(int index)
            {
                if (index <= 0)
                    throw new Exception("invaild parameter");
                
                index--;
                List<string> chars = new List<string>();
                do
                {
                   if (chars.Count > 0)
                       index--;
                    chars.Insert(0, ((char)(index % 26 + (int)'A' )).ToString());
                    index = (int)((index - index % 26) / 26);
                } while (index > 0);
                
                return String.Join(string.Empty, chars.ToArray());
            }
    
    伪python爱好者,正宗测试实践者。
  • 相关阅读:
    masonry中的make,remake,update
    内存划分五大区
    Java处理JPEG图片时,需要导入com.sun.image.codec.jpeg.JPEGImageEn,报错处理
    Xcode 8 控制台输出大量不用的log的问题解决&&NSLog失效的解决
    GCD系列 之(二): 多核心的性能
    GCD系列 之(一):基本概念和Dispatch Queue
    CADisplayLink使用中的循环引用问题的解决
    定时帧:NSTimer和CADisplayLink
    设置圆角的4种方式--引申出离屏渲染
    华为OLT 注册过程
  • 原文地址:https://www.cnblogs.com/herbert/p/1824962.html
Copyright © 2011-2022 走看看