01.ArcEngine中IField的属性详细描述

目录

0.代码样例 

1. AliasName

2.CheckValue

3.DefaultValue

4.Domain

5.DomainFixed 

6.Editable 

7.GeometryDef 

8.IsNullable 

9.Length 

10.Name 

11.Precision 

12.Required 

13.Scale 

14.Type 

15.VarType 


0.代码样例 

  IFields fields = featureclass.Fields;for (int i = 0; i < fields.FieldCount; i++){IField field = fields.get_Field(i);string fieldName = field.Name;string aliasName = field.AliasName;esriFieldType type = field.Type;int length = field.Length;int precision = field.Precision;bool isNullable = field.IsNullable;int scale = field.Scale;}

1. AliasName

AliasName:该字段的别名。

2.CheckValue

CheckValue:指示给定字段定义的值是否有效。 

校验值将根据字段类型测试指定的值对当前字段是否有效。例如,校验值将验证所提供的值是否对应于小整数的字段类型,或者该值是否对应于一个字符串值。 该值不会针对任何现有的域进行检查。

3.DefaultValue

DefaultValue:该字段的默认值。

4.Domain

Domain:该字段的默认域。

5.DomainFixed 

DomainFixed:指示该字段的域是否已固定。 

6.Editable 

Editable:指示该字段是否可编辑的。 

字段的可编辑属性应该始终设置为true。将其设置为false将防止所有用户编辑该字段的内容。要将字段设置为只读的,请使用ifieldinfo3.readonly属性。 最好是循环遍历特性的字段,并跳过不可编辑的字段,而不是允许用户尝试编辑无法编辑的字段。 

7.GeometryDef 

GeometryDef:如果几何为真,字段的几何定义。 

8.IsNullable 

IsNullable:指示该字段是否可以包含空值。 

9.Length 

Length:该字段所描述的值的最大长度,以字节为单位。

10.Name 

Name:该字段的名称。 

根据其几何图形类型,地理数据库特征类可能包含自动生成的形状长度和面积的字段。在个人和文件地理数据库中,这些字段将使用后缀为“_linge”和“_area”的形状字段的名称进行命名。在sde地理数据库中,这些字段的名称将依赖于底层的dbms。 应该使用要素类IFeatureClass::shape字段名称属性来确定特征类的长度和区域字段的名称。 

11.Precision 

Precision:字段值的精度。 

精度是一个数字中的位数。例如,数字56.78的精度为4。精度仅适用于数值字段。精度总是从个人或文件地理数据库字段中返回为0。 

12.Required 

Required:指示是否需要该字段。 

所有的表和特性类都有一组必需的字段,这些字段是记录表或特性类中任何特定对象的状态所必需的。这些必需字段将在创建新的要素类或表时自动创建,但无法删除。必需的字段也可能具有必需的属性,如其域属性。无法修改必需字段的必需属性。 例如,在一个简单的特征类中,类和形状都是必需的字段。它们确实具有可以修改的别名和几何图形类型等属性,但不能删除这些字段。 所需的属性仅适用于对修改字段属性的模式或阻止其被删除的更改。它不会影响更新或添加\删除字段内的值的能力。此外,将所需的字段属性设置为true将阻止用户通过gui以及通过ArcObjects删除字段。 

13.Scale 

Scale:字段值的比例尺(即小数位数)

缩放是一个数字中小数点右边的位数。例如,数字56.78的比例为2。只适用于双精度的字段。但是总是从个人或文件地理数据库字段中返回为0。

14.Type 

Type:该字段的类型。 

有关资源类型值与底层sde和dbms数据类型之间关系的更多信息,请参阅arcgis帮助中的以下文章: 

  • "A comparison of ArcGIS, ArcSDE, and DB2 data types"
  • "A comparison of ArcGIS, ArcSDE, and Informix data types"
  • "A comparison of ArcGIS, ArcSDE, and PostgreSQL data types"
  • "A comparison of ArcGIS, ArcSDE, and Oracle data types"
  • "A comparison of ArcGIS, ArcSDE, and SQL Server data types"

The following table outlines the equivalent field data types in ArcCatalog, ArcObjects and .NET:

ArcCatalog

esriFieldType

(IField::Type)

.NET Variable Type

Short IntegeresriFieldTypeSmallIntegerSystem.Int16
Long IntegeresriFieldTypeIntegerSystem.Int32
FloatesriFieldTypeSingleSystem.Single
DoubleesriFieldTypeDoubleSystem.Double
TextesriFieldTypeStringSystem.String
DateesriFieldTypeDateSystem.DateTime
Object IDesriFieldTypeOIDSystem.Int32
GeometryesriFieldTypeGeometryESRI.ArcGIS.Geometry.IGeometry
BlobesriFieldTypeBlobESRI.ArcGIS.esriSystem.IMemoryBlobStream
RasteresriFieldTypeRasterESRI.ArcGIS.Geodatabase.IRasterValue
GUIDesriFieldTypeGUIDSystem.String
GlobalIDesriFieldTypeGlobalIDSystem.String

下表概述了地理数据库字段映射的覆盖范围: 

Item typeItem widthGeodatabase field type (esriFieldType)
B4esriFieldTypeInteger
C1-320esriFieldTypeString
D8esriFieldTypeDate
F4esriFieldTypeSingle
F8esriFieldTypeDouble
I1-4esriFieldTypeSmallInteger
I5-9esriFieldTypeInteger
I10-16esriFieldTypeDouble
N1-9esriFieldTypeSingle
N10-16esriFieldTypeDouble

下表概述了Shapefile、 dBASE field to Geodatabase field的映射:

Field typeField widthGeodatabase field type (esriFieldType)
Date-esriFieldTypeDate
String1-255esriFieldTypeString
Boolean-esriFieldTypeString
Number1-16 (decimals = 0)esriFieldTypeInteger
Number1-16 (decimals > 0)esriFieldTypeDouble

注意:形状文件仅支持日期字段。不支持时间。地理数据库支持的日期\时间字段。如果在此时查询了一个形状文件日期字段,则将返回一个默认值“12:00:00am”。 

15.VarType 

VarType:字段的不同类型(例如,vt_i4)。

以下是可以从此属性返回的可变类型常量的列表。 

Field typeVarType

esriFieldTypeSmallInteger

esriFieldTypeInteger

esriFieldTypeSingle

esriFieldTypeDouble

esriFieldTypeString

esriFieldTypeDate

esriFieldTypeOID

esriFieldTypeGeometry

esriFieldTypeBlob

esriFieldTypeRaster

esriFieldTypeGUID

esriFieldTypeGlobalID

2

3

4

5

8

7

3

13

13

13

8

8

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/776167.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

双通道内存@DDR5多通道内存

文章目录 多通道内存DDR4及以前的内存的双通道DDR5往后的双通道和多通道半位宽4通道组合 其他组合测试 DDR5介绍概览重要Features特点 总结 多通道内存 DDR4及以前的内存的双通道 双通道内存是一种内存架构设计&#xff0c;通过在主板上配置两个或多个独立且同时工作的内存控制…

管理阿里云服务器ECS -- 网站选型和搭建

小云&#xff1a;我已经学会了如何登录云服务器ECS了&#xff0c;但是要如何搭建网站呢&#xff1f; 老王&#xff1a;目前有很多的个人网站系统软件&#xff0c;其中 WordPress 是使用非常广泛的一款&#xff0c;而且也可以把 WordPress 当作一个内容管理系统&#xff08;CMS…

使用yolov9来实现人体姿态识别估计(定位图像或视频中人体的关键部位)教程+代码

yolov9人体姿态识别&#xff1a; 相较于之前的YOLO版本&#xff0c;YOLOv9可能会进一步提升处理速度和精度&#xff0c;特别是在姿态估计场景中&#xff0c;通过改进网络结构、利用更高效的特征提取器以及优化损失函数等手段来提升对复杂人体姿态变化的捕捉能力。由于YOLOv9的…

架构师之路--docker命令实践整理

安装docker sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine sudo yum install -y yum-utils sudo yum-config-manager --add-repo http://mirrors.aliyun.com/…

开源博客项目Blog .NET Core源码学习(12:App.Application项目结构分析)

开源博客项目Blog的App.Application项目主要定义网站页面使用的数据类&#xff0c;同时定义各类数据的增删改查操作接口和实现类。App.Application项目未安装Nuget包&#xff0c;主要引用App.Core项目的类型。   App.Application项目的顶层文件夹如下图所示&#xff0c;下面逐…

巨控GRM110系列:短距离内的无线通讯模块

标签: #巨控GRM110 #无线通讯 #ROLA技术 #工业自动化 #远程数据采集 在工业自动化和智能制造的领域中&#xff0c;数据的准确传输是实现高效生产的关键。随着技术的不断进步&#xff0c;无线通讯技术已成为破解远距离数据传输难题的利器。今天&#xff0c;我们将聚焦于一款革命…

U盘未格式化?数据恢复大揭秘!

在日常办公和生活中&#xff0c;U盘已成为我们不可或缺的数据存储工具。然而&#xff0c;有时我们会遇到这样一个令人头疼的问题&#xff1a;原本正常使用的U盘&#xff0c;突然提示“未格式化”&#xff0c;里面的文件似乎都消失不见了。面对这种情况&#xff0c;很多人会感到…

35岁,程序员职业生涯的新起点

近年来&#xff0c;关于程序员职业生涯的讨论日益热烈&#xff0c;而“35岁被认为是程序员职业生涯的分水岭”更是成为了一个备受关注的话题。在这篇文章中&#xff0c;我们将探讨这一说法的合理性&#xff0c;并从事实和数据的角度来分析&#xff0c;为什么35岁并非程序员职业…

线程池-1:线程池是如何复用线程的?

这段代码实现了一个简单的线程池 SimpleThreadPool。主要包括以下几个关键部分&#xff1a; 构造函数&#xff1a;初始化最大线程数 maxPoolSize、任务队列 taskQueue、当前线程数 currentPoolSize&#xff0c;以及锁 lock 和条件 taskAvailable。 submit(Runnable task) 方法…

PSINS初学指导

2024-3-27/Evand/Ver1 因为惯导解算设计的数学公式很多&#xff0c;在编程时如果一步一步自己编&#xff0c;非常耗时耗力&#xff0c;所以在进行上层设计时&#xff0c;借助工具箱完成底层的复杂计算是很有必要的。另一方面&#xff0c;也能利用工具箱进行惯导解算方面的学习…

FPGA时钟资源详解(2)——Clock-Capable Inputs

FPGA时钟系列文章总览&#xff1a;FPGA原理与结构&#xff08;14&#xff09;——时钟资源https://ztzhang.blog.csdn.net/article/details/132307564 目录 一、概述 1.1 为什么使用CC 1.2 如何使用CC 二、Clock-Capable Inputs 2.1 SRCC 2.2 MRCC 2.3 其他用途 2.3.1…

WIFI驱动移植实验:WIFI驱动加载测试

一. 简介 前面文章学习了向kernel内核源码中添加 trl8188驱动代码&#xff0c;配置内核以支持 WIFI设备&#xff0c;使能WIFI功能。文章地址如下&#xff1a; WIFI驱动移植实验&#xff1a;删除Linux内核自带的 RTL8192CU 驱动-CSDN博客 WIFI驱动移植实验&#xff1a;将 rtl…

LeetCode 135. 分发糖果

n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求&#xff0c;给这些孩子分发糖果&#xff1a; 每个孩子至少分配到 1 个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果&#xff0c;计算并返回需要准备的…

C语言中连字符“#”的使用,输出固件的编译时间和版本号

首先我们使用C语言宏定义和“#”来组合字符串 #define MAINVER 2#define SUBVER1 0#define SUBVER2 1#define STR(s) #s#define VERSION(a,b,c) "System V" STR(a) "." STR(b) "." STR(c) " "__DATE__ 然后我们在全局变量中定义一…

服务器硬件

目录 服务器CPU服务器GPU服务器内存服务器硬盘服务器主板散热系统&#xff08;服务器风扇&#xff09;服务器电源&#xff08;电影供应器&#xff09;其他网络适配器扩展卡 服务器CPU 基于架构的分类&#xff1a;根据CPU的架构不同&#xff0c;可以分为x86架构&#xff08;如I…

API接口鉴权签名设计

在设计API接口的鉴权签名时&#xff0c;通常会使用一种加密算法来生成签名&#xff0c;以确保请求的合法性和安全性。以下是通过鉴权签名的设计方案。 1、接口秘钥设置 Key:123 Secret:abc 2、接口Url 接口Url需要使用https的协议保证接口数据安全传输 3、请求参数 3.1、…

VsCode的json文件不允许注释的解决办法

右下角找到注释点进去 输入Files: Associations搜索出此项 改为项为*.json值为jsonc保存即可 然后会发现VsCode的json文件就允许注释了

哈工大 sse C语言 困难

Q1892.(10分数, 语言: C)Two Bags of Potatoes time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output Valera had two bags of potatoes, the first of these bags contains x (x≥1) potatoes, and the second — y (y…

RAG进阶笔记:RAG进阶

1 查询/索引部分 1.1 层次索引 创建两个索引——一个由摘要组成&#xff0c;另一个由文档块组成分两步进行搜索&#xff1a;首先通过摘要过滤出相关文档&#xff0c;接着只在这个相关群体内进行搜索 1.2 假设性问题 让LLM为每个块生成一个假设性问题&#xff0c;并将这些问…

SQL104 返回产品名称和每一项产品的总订单数(left join..on.. ,group by)

select prod_name,count(order_num) as orders from Products P left join OrderItems OI on OI.prod_id P.prod_id group by prod_name order by prod_name;left join一个数据条多的表 count&#xff08;order_num&#xff09;,group by 另一个字段