首页 > 编程语言 >C#中获取Excel文件中的表名

C#中获取Excel文件中的表名

时间:2023-06-30 11:33:38浏览次数:32  
标签:string C# Excel System 表名 using conn excelFileName

 



excel文件中第一个表名的缺省值是sheet1$, 但有时也会被改变为其他名字. 如果需要在C#中使用OleDb读写Excel文件, 就需要知道这个名字是什么. 以下代码就是实现这个功能的: 





using System; 


using System.IO; 


using System.Data; 


using System.Data.OleDb; 





namespace Skyiv.Ben.Util 


{ 


sealed class Pub 


{ 


public static string GetExcelFirstTableName(string excelFileName) 


{ 


string tableName = null; 


if (File.Exists(excelFileName)) 


{ 


using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet."+ 


"OLEDB.4.0;Extended Properties=\"Excel 8.0\";Data Source=" + excelFileName)) 


{ 


conn.Open(); 


DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); 


tableName = dt.Rows[0][2].ToString().Trim(); 


} 


} 


return tableName; 


} 


} 


} 





namespace Skyiv.Ben.Test 


{ 


using Skyiv.Ben.Util; 





class MainTest 


{ 


static void Main(string [] args) 


{ 


foreach (string s in args) 


Console.WriteLine("[{0}] => [{1}]", s, Pub.GetExcelFirstTableName(s)); 


} 


} 


}


作者:古道轻风


标签:string,C#,Excel,System,表名,using,conn,excelFileName
From: https://blog.51cto.com/u_15949547/6589314

相关文章

  • Kotlin + buildSrc:更好的管理Gadle依赖
    为了充分利用AndroidPluginforGradle3.0+的优点,将Android项目拆分成多个module的做法越来越常见。然而,随着module数量的增多,我们很快就会遇到依赖管理的混乱问题。管理Gradle依赖的三种不同方法:手动管理使用Google推荐的“ext”Kotlin+buildSrc1、手动管理这是一种大多数人在......
  • 瓴羊Quick BI:国产企业大数据分析工具之光
    企业大数据分析工具的数据可视化能力、安全性和隐私保护机制对于现代企业而言极为重要。瓴羊QuickBI作为一个优秀的工具,不仅提供了丰富的可视化功能,还具备完善的权限管理和权限配置功能,帮助企业客户搭建企业数据安全体系,有效保障商业数据及客户信息的安全。数据可视化能力:数据可视......
  • .NETCORE 如何使用Redis进行消息订阅和发布
    创建RedisMessagePublisher和RedisMessageSubscriber。RedisMessagePublisher用于发布消息到指定的频道,而RedisMessageSubscriber用于订阅频道并处理接收到的消息usingStackExchange.Redis;usingSystem;publicclassRedisMessagePublisher{privatereadonlyIConnectionM......
  • 记录一次项目数据采集分析-NEWC数据泄漏
     一不小心,把B圈的项目给扒拉下来了,发现这些大佬板还关联着PHA,PHIC两个盘子,号称国外。PHIC大本营在成都,哈哈哈,不要问我咋知道"15642377778""周传海""210219197403282316"项目方qq号378720717QQ群858864205"17771173077" "王云龙" "420222199402268316"项目方qq号34......
  • opencv 采用实时摄像
    importcv2ascvcap=cv.VideoCapture(1)num=1while(cap.isOpened()):#检测摄像头是否开启ret,frame=cap.read()#读取每一针的数据#设置显示大小farm=cv.resize(frame,dsize=(1080,1080))#显示图像cv.imshow("2",farm)cv.waitKey(1)&0xFF#键盘检测#......
  • JavaScript高级学习
    JavaScript进阶学习作用域、变量提升、闭包等语言特征,加深对JavaScript的理解,掌握变量赋值、函数声明的简洁语法,降低代码的冗余度。理解作用域对程序执行的影响能够分析程序执行的作用域范围理解闭包本质,利用闭包创建隔离作用域了解什么变量提升及函数提升掌握箭头函......
  • Doris整合Elasticsearch
    1、环境doris 1.2.4Elasticsearch7.7安装教程https://www.cnblogs.com/yanzhong/p/17515917.html2、doris配置外表(方法一)1、添加语法详细官网https://doris.apache.org/zh-CN/docs/1.2/lakehouse/external-table/es?_highlight=外表#doris中创建es外表CREATEEXTE......
  • .NETCORE 进行Redis读写
    usingStackExchange.Redis;publicclassRedisDataStorage{privatereadonlyIConnectionMultiplexer_redis;publicRedisDataStorage(stringconnectionString){_redis=ConnectionMultiplexer.Connect(connectionString);}publicvoidSe......
  • Docker-环境安装
    安装yum-utils:yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2  为yum源添加docker仓库位置: yum-config-manager--add-repohttps://download.docker.com/linux/centos/docker-ce.repo   安装docker: yuminstalldocker-ce......
  • 使用gitlab实现CICD
    一、概念介绍GitLabCI/CD是一个内置在GitLab中的工具,用于通过持续方法进行软件开发:ContinuousIntegration(CI) 持续集成ContinuousDelivery(CD)   持续交付ContinuousDeployment(CD)  持续部署持续集成的工作原理是将小的代码块推送到Git仓库中......