返回顶部
首页 > 资讯 > 精选 >C#中怎么查看对象模型
  • 798
分享到

C#中怎么查看对象模型

2023-06-17 22:06:47 798人浏览 八月长安
摘要

C#中怎么查看对象模型,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。C#语言有很多值得学习的地方,这里我们主要介绍C#查看excel对象模型,包括介绍Range对象的Find(

C#中怎么查看对象模型,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

C#语言有很多值得学习的地方,这里我们主要介绍C#查看excel对象模型,包括介绍Range对象的Find()方法等方面。

打开Excel的VBA帮助,C#查看Excel对象模型,很容易找到完成这个功能需要的几个集合和对象:Application、Workbooks、Workbook、Worksheets还有Worksheet和Range。Application创建Excel应用,Workbooks打开Excel文档,Workbook获得Excel文档工作薄,Worksheets操作工作表集合,Worksheet获得单个工作表。

搜索的思路对应上述集合和对象,可以这样表述:要搜索的文本可能存在Excel文档当中的某个工作表上,搜索应该遍历目标Excel文件的每个工作表中的有效区域,如果找到,则退出本次搜索,如果没有找到,则继续搜索直到完成本次搜索。

Word对象模型不一样的是,C#查看Excel对象模型没有提供Find对象,不过没有关系,可以通过两种方法来实现,一个是通过Range对象的Find()方法来实现,另外一个比较麻烦,取得工作表 Worksheet的有效区域UsedRange之后,遍历该Range对象中的所有行列。实际开发中,用第二种方法时发现了一个特别的现象,所以第二种方法也准备详细记述一下。

***步,打开Excel文档:

object filename="";  object MissingValue=Type.Missing;  string strKeyWord=""; //指定要搜索的文本,如果有多个,则声明string[]  Excel.Application ep=new Excel.ApplicationClass();  Excel.Workbook ew=ep.Workbooks.Open(filename.ToString(),MissingValue,  MissingValue,MissingValue,MissingValue,  MissingValue,MissingValue,MissingValue,  MissingValue,MissingValue,MissingValue,  MissingValue,MissingValue,MissingValue,  MissingValue);

然后准备遍历Excel工作表:

Excel.Worksheet ews;  int iEWSCnt=ew.Worksheets.Count;  int i=0,j=0;  Excel.Range oRange;  object oText=strKeyWord.Trim().ToUpper();   for(i=1;i<=iEWSCnt;i++)  {  ews=null;  ews=(Excel.Worksheet)ew.Worksheets[i];  oRange=null;  (Excel.Range)oRange=((Excel.Range)ews.UsedRange).Find(  oText,MissingValue,MissingValue,  MissingValue,MissingValue,Excel.XlSearchDirection.xlNext,  MissingValue,MissingValue,MissingValue);  if (oRange!=null && oRange.Cells.Rows.Count>=1 && oRange.Cells.Columns.Count>=1)  {  MessageBox.Show("文档中包含指定的关键字!","搜索结果",MessageBoxButtons.OK);  break;  }  }

这里要说两个值得注意的地方。一个是遍历工作表的索引,不是从0开始,而是从1开始;另外一个是Find方法的第六个参数 SearchDirection,指定搜索的方向,帮助文档中说这个参数是可选项,但是我用MissingValue如论如何编译不能通过,不知什么原因,于是显式指定它的默认值xlNext。

***种方法实现了,再看看第二种方法。这种方法除了要遍历工作表,还要对工作表使用区域的行和列进行遍历。其它一样,只对遍历说明,代码如下:

bool blFlag=false;  int iRowCnt=0,iColCnt=0,iBgnRow,iBgnCol;   for(m=1;m<=iEWSCnt;m++)  {  ews=(Excel.Worksheet)ew.Worksheets[m];  iRowCnt=0+ews.UsedRange.Cells.Rows.Count;  iColCnt=0+ews.UsedRange.Cells.Columns.Count;  iBgnRow=(ews.UsedRange.Cells.Row>1)?  ews.UsedRange.Cells.Row-1:ews.UsedRange.Cells.Row;  iBgnCol=(ews.UsedRange.Cells.Column>1)?  ews.UsedRange.Cells.Column-1:ews.UsedRange.Cells.Column;   for(i=iBgnRow;i<iRowCnt+iBgnRow;i++)  {  for(j=iBgnCol;j<iColCnt+iBgnCol;j++)  {  strText=((Excel.Range)ews.UsedRange.Cells[i,j]).Text.ToString();  if (strText.ToUpper().IndexOf(strKeyWord.ToUpper())>=0)  {  MessageBox.Show("文档中包含指定的关键字!","搜索结果",MessageBoxButtons.OK);  }  }  }  }

显然这种方法比***种繁琐得多,不过这里有一个关于遍历单元格的索引很特别的地方,当工作表中的使用区域UsedRange为单行单列的时候,对UsedRange中的单元格遍历起始索引值为1,为多行多列的时候,起始索引值为0,不知这是Excel程序设计者出于什么样的考虑?

看完上述内容,你们掌握C#中怎么查看对象模型的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: C#中怎么查看对象模型

本文链接: https://lsjlt.com/news/294111.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • C#中怎么查看对象模型
    C#中怎么查看对象模型,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。C#语言有很多值得学习的地方,这里我们主要介绍C#查看Excel对象模型,包括介绍Range对象的Find(...
    99+
    2023-06-17
  • C++对象模型与this指针怎么使用
    这篇“C++对象模型与this指针怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C++对象模型与this指针怎么使用...
    99+
    2023-06-30
  • jmap怎么查看存活对象
    要查看存活对象,可以使用JMap工具来获取堆内存信息,包括对象数量、大小等。以下是通过JMap查看存活对象的步骤: 打开命令提示符...
    99+
    2024-03-05
    jmap
  • ADO.NET对象模型怎么理解
    这篇文章主要讲解了“ADO.NET对象模型怎么理解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ADO.NET对象模型怎么理解”吧!许多VS开发人员似乎都这么想,认为所有的Oracle的东西...
    99+
    2023-06-17
  • C#扩展性对象模型介绍
    这篇文章主要讲解了“C#扩展性对象模型介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#扩展性对象模型介绍”吧!C#扩展性对象模型Visual Studio .NET 包含一个可编程、非...
    99+
    2023-06-17
  • tensorflow模型怎么查看参数
    要查看TensorFlow模型的参数,可以使用model.summary()方法来打印出模型的结构和参数数量。示例代码如下: imp...
    99+
    2024-03-13
    tensorflow
  • Hibernate和模型对象怎么理解
    这篇文章主要讲解了“Hibernate和模型对象怎么理解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Hibernate和模型对象怎么理解”吧!学习Hibernate时,经常会遇到一些小问题...
    99+
    2023-06-17
  • C#中对象状态模式怎么实现
    这篇文章主要介绍了C#中对象状态模式怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#中对象状态模式怎么实现文章都会有所收获,下面我们一起来看看吧。定义枚举表示教程进度首先用一个枚举,表示教程进行的不同...
    99+
    2023-06-30
  • c#怎么查看数据类型
    要查看 c# 中的数据类型,您可以使用 typeof() 运算符获取 system.type 对象,然后使用该对象属性(如 name、namespace、basetype 和 getge...
    99+
    2024-04-04
    c#
  • C++对象模型和this指针详解
    目录对象模型一、二、三、四、五、this指针一、二、总结对象模型 成员变量和成员函数分开存储 一、 只有非静态成员变量才属于类的对象上 空对象占用字节为1 class Pe...
    99+
    2024-04-02
  • 怎么理解Javascript中浏览器对象模型
    本篇内容主要讲解“怎么理解Javascript中浏览器对象模型”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解Javascript中浏览器对象模型”吧!J...
    99+
    2024-04-02
  • thinkphp5 使用模型查询对象类型转数组
    在ThinkPHP5中,可以使用模型的toArray方法将查询结果对象类型转换为数组类型。以下是一个例子:1. 假设有一个User模...
    99+
    2023-10-11
    php
  • tensorflow导出模型后怎么查看
    你可以使用TensorFlow提供的TensorBoard工具来查看导出的模型。首先,你需要在命令行中使用以下命令启动TensorB...
    99+
    2024-04-03
    tensorflow
  • eclipse运行怎么查看对象内存
    要查看对象内存的情况,可以通过以下几种方式实现: 使用Eclipse自带的Memory Analyzer工具(MAT)来查看对象...
    99+
    2024-03-13
    eclipse
  • SpringMVC中的几个模型对象
    目录SpringMVC的几个模型对象1.ModelAndView2.Map和modelAndView原理一样3.@SessionAttributesSpringMVC的几个重要对象S...
    99+
    2024-04-02
  • Python的对象模型是什么
    在面向对象的理论中,有两个核心的概念:类和实例。类可以看成是一个模板,实例就是根据这个模板创建出来的对象。在Python中,类和实例都被视为对象,即类对象(或类型对象)和实例对象。为了避免后续出现歧义,我们这里把对象分为三种:内置类对象:比...
    99+
    2023-05-18
    Python
  • SQL Server中怎么查看对象定义的SQL语句
    这篇文章将为大家详细讲解有关SQL Server中怎么查看对象定义的SQL语句,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。除了在SSMS中查看view,存...
    99+
    2024-04-02
  • Entity Framework模型优先与实体对象查询
    目录一、概念:EF6 可实现的功能:二、安装Entity Framework61、VS2019 Installer安装“Entity Framework6 工具&rdqu...
    99+
    2024-04-02
  • JavaScript 中的文档对象模型 DOM
    目录1、什么是DOM2、选择元素3、getElementById()4、querySelector()5、querySelectorAll()6、添加新元素7、更改CSS样式8、如何...
    99+
    2024-04-02
  • C++对象模型之RTTI的实现原理是什么
    本篇内容介绍了“C++对象模型之RTTI的实现原理是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!RT...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作