/// <summary>
/// 返回对应标题的索引
/// </summary>
/// <param name="columnTitle">Excel定义列标题:大写字母</param>
/// <returns>索引从0开始</returns>
public static int GetColumnIndex(string columnTitle)
{
int len = columnTitle.Length - ;
int index = ;
for (int i = len; i >=; i--)
{
index += GetColumnTitleNumber(columnTitle[i])*Convert.ToInt32(Math.Pow(, len - i));
}
return --index;
} private static int GetColumnTitleNumber(char columnTitle)
{
int startNumber = Convert.ToInt32('A');
int currentNumber = Convert.ToInt32(columnTitle);
if (currentNumber < startNumber || currentNumber >= startNumber + )
throw new ArgumentOutOfRangeException(columnTitle+"列标题超出定义");
return Convert.ToInt32(columnTitle) - startNumber + ;
} /// <summary>
/// 根据列的索引返回对应的标题
/// </summary>
/// <param name="columnIndex">列索引从0开始</param>
/// <returns></returns>
public static string GetColumnTitle(int columnIndex)
{
int columnNumber = columnIndex + ;
int left = columnNumber/;
int startNumber = Convert.ToInt32('A');
if (left == || (left == && (columnNumber% == )))
{
return ((char) (startNumber + columnNumber - )).ToString();
}
if (columnNumber% == )
left--;
return GetColumnTitle(left) + GetColumnTitle(columnNumber - left * );
}

Excel标题与索引的对应关系的更多相关文章

  1. java使用poi自定义excel标题头并导出(springmvc+poi)

    项目使用的是jeecg开源框架(springmvc+spring+hibernate+......等)此代码仅供参考!如有更好的意见或建议可留言. 1 controller 层 /** * excel ...

  2. 实现标记datagridview标题并导出Excel的功能

    最近在学习winform,国庆前被布置了一个小任务,好不容易大致做出来了,决定记录下来,以此加深印象. 先说下需求:这是一个导入话单标记后并导出的功能 1. 选择excel文件 2. 定义字段   日 ...

  3. C#_Excel数据读取与写入_自定义解析封装类_支持设置标题行位置&使用excel表达式收集数据&单元格映射&标题映射&模板文件的参数数据替换

    本篇博客园是被任务所逼,而已有的使用nopi技术的文档技术经验又不支持我需要的应对各种复杂需求的苛刻要求,只能自己造轮子封装了,由于需要应对很多总类型的数据采集需求,因此有了本篇博客的代码封装,下面一 ...

  4. Excel 列名转int索引(C#版)

    /// <summary> /// 获取Excel实际列索引 /// </summary> /// <param name="columnName"& ...

  5. 利用poi导出Excel

    import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.r ...

  6. ASP.NET MVC导出excel(数据量大,非常耗时的,异步导出)

    要在ASP.NET MVC站点上做excel导出功能,但是要导出的excel文件比较大,有几十M,所以导出比较费时,为了不影响对界面的其它操作,我就采用异步的方式,后台开辟一个线程将excel导出到指 ...

  7. 分享我基于NPOI+ExcelReport实现的导入与导出EXCEL类库:ExcelUtility

    1. ExcelUtility功能:  1.将数据导出到EXCEL(支持XLS,XLSX,支持多种类型模板,支持列宽自适应)  类名:ExcelUtility. Export  2.将EXCEL ...

  8. 使用Aspose.Cell.dll导出Excel总结

    这两天项目上用Aspose导出Excel来着.开始感觉挺简单的,但是实际操作起来还是挺复杂的,调试占的时间很长.主要是动态生成列.合并单元格.调样式占了很长时间,还是总结一下吧. 基础操作: //EX ...

  9. 使用NPOI导入导出标准的Excel

    关于NPOI NPOI是POI项目的.NET版本,是由@Tony Qu(http://tonyqus.cnblogs.com/)等大侠基于POI开发的,可以从http://npoi.codeplex. ...

随机推荐

  1. Django分析之使用redis缓存服务器

    时间长没有更新了,这段时间一直忙着一个项目,今天就记录一个现在经常会用到的技术吧. redis相信大家都很熟悉了,和memcached一样是一个高性能的key-value数据库,至于什么是缓存服务器, ...

  2. [转]Oracle数据块体系的详细介绍

    数据块概述Oracle对数据库数据文件(datafile)中的存储空间进行管理的单位是数据块(data block).数据块是数据库中最小的(逻辑)数据单位.与数据块对应的,所有数据在操作系统级的最小 ...

  3. Java将文件转为字节数组

    Java将文件转为字节数组 关键字:文件,文件流,字节流,字节数组,二进制 摘要:最近工作中碰到的需求是,利用http传输二进制数据到服务器对应接口,需要传输userId, file(加密后)等一系列 ...

  4. ArithUtil工具类 : 精确计算各种运算

    package com.autoserve.mh.common.util;   import java.math.BigDecimal; import java.text.DecimalFormat; ...

  5. Ubuntu使用阿里云软件源

    如果在安装Ubuntu时,选择的地区为美国,建议更新为阿里云或国内 软件源 sudo sed -i s/archive.ubuntu.com/mirrors.aliyun.com/g /etc/apt ...

  6. php_cz

    post.php <?php require_once 'config.php'; $ddh=trim(htmlspecialchars($_POST['ddh'])); //支付宝交易号 $m ...

  7. Mybatis缓存处理机制

    一.MyBatis缓存介绍 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持 一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Se ...

  8. 配置webdriver环境

    安装环境pip install selenium,提示 Could not find a version that satisfies the requirement selenium (from v ...

  9. [转]推荐一个简单、轻量、功能非常强大的C#/ASP.NET定时任务执行管理器组件–FluentScheduler

    在C#WINFORM或者是ASP.NET的WEB应用程序中,根据各种定时任务的需求,比如:每天的数据统计,每小时刷新系统缓存等等,这个时候我们得应用到定时器这个东东. .NET Framework有自 ...

  10. java synchronized详解

    Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码. 一.当两个并发线程访问同一个对象object中的这个synchronized(this ...