KML是Keyhole标记语言的缩写,它是XML表示法的扩展。它是GIS文件格式,用于显示地理信息。可以以编程方式创建KML文件,也可以使用C#语言从其中读取信息。

让我们探索以下与KML文件格式有关的部分:

  • 使用C#以编程方式创建KML文件
  • 使用C#以编程方式从KML文件中读取功能

Aspose.GIS for .NET API支持使用KML文件以及其他几种受支持的文件格式。让我们安装API来处理基于.NET的应用程序中的矢量文件。

>>你可以点击这里下载Aspose.GIS最新版测试体验。


使用C#以编程方式创建KML文件

KML文件像XML文件一样遵循基于标记的结构。您可以使用KML文件来精确定位位置,计划或跟踪行程以及许多其他重要情况。您可以使用C#通过以下步骤以编程方式创建KML文件:

  • 创建一个图层
  • 初始化功能的几何形状和属性
  • 设定不同属性的值
  • 将特征添加到特定图层

以下代码段是有关如何在C#中以编程方式创建KML文件的基本且简单的演示:

// Create a layer
using (var layer = Drivers.Kml.CreateLayer(dataDir + "Kml_File_out.kml"))
{// Initialize feature for geometry and attributeslayer.Attributes.Add(new FeatureAttribute("string_data", AttributeDataType.String));layer.Attributes.Add(new FeatureAttribute("int_data", AttributeDataType.Integer));layer.Attributes.Add(new FeatureAttribute("bool_data", AttributeDataType.Boolean));layer.Attributes.Add(new FeatureAttribute("float_data", AttributeDataType.Double));// Set value of different attributesFeature feature = layer.ConstructFeature();feature.SetValue("string_data", "string value");feature.SetValue("int_data", 10);feature.SetValue("bool_data", true);feature.SetValue("float_data", 3.14);feature.Geometry = new LineString(new[] { new Point(0, 0), new Point(1, 1) });// Add the feature to a specific Layerlayer.Add(feature);Feature feature2 = layer.ConstructFeature();feature2.SetValue("string_data", "string value2");feature2.SetValue("int_data", 100);feature2.SetValue("bool_data", false);feature2.SetValue("float_data", 3.1415);feature2.Geometry = Geometry.Null;layer.Add(feature2);
}

使用C#以编程方式从KML文件中读取功能

KML文件的基本功能可能包括地标,描述,路径等。让我们继续上面示例中创建的KML文件。您可以按照以下步骤阅读KML文件的任何功能:

  • 使用OpenLayer方法加载输入的KML文件
  • 获取功能计数
  • 访问特定索引处的功能
  • 读取KML文件的功能

以下代码段显示了如何在C#中以编程方式从KML文件中读取功能:

// Load input KML file with OpenLayer method
using (var layer = Drivers.Kml.OpenLayer(dataDir + "Kml_File.kml"))
{// Get features’ countint count = layer.Count;// Access a feature at a specific indexFeature featureAtIndex1 = layer[0];Console.WriteLine(featureAtIndex1.GetValue("string_data"));Feature featureAtIndex2 = layer[1];Console.WriteLine(featureAtIndex2.GetValue("string_data"));
}

如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询。

使用C#快速创建KML文件或读取其功能相关推荐

  1. 经纬坐标(BLH)数据创建.kml文件小工具设计 Java版

    技术背景 KML,是标记语言(Keyhole Markup Language)的缩写,最初由Keyhole公司开发,是一种基于XML 语法与格式的.用于描述和保存地理信息(如点.线.图像.多边形和模型 ...

  2. vscode 新建php模板,使用VSCode快速创建vue文件模版的方法介绍

    VSCode怎么自定义代码模版?下面本篇文章给大家介绍一下VSCode快速创建vue文件模版的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 修改位置 打开vscode首选项- ...

  3. linux命令dd创建虚拟硬盘,每日一题.PYTHON如何模拟LINUX的dd命令快速创建大文件?...

    原文数据: 无 具体要求: 1. 模拟Linux的dd命令快速创建大文件 代码实现: # -*- coding: utf-8 -*- """ # # Authors: l ...

  4. windows下快速创建大文件

    windows下快速创建大文件 F:/>fsutil file createnew wu 20480000000 已创建文件 F:/wu 也可以使用API SetEndOfFile

  5. Python创建txt文件并读取与写入

    Python创建txt文件并读取与写入 [PyCharm 软件内操作] 在PyCharm中创建工作目录(D:\python\test1\) 一.创建一个txt文档 # -*- coding: utf- ...

  6. 如何快速创建k8syaml文件模板

    如何快速创建k8syaml文件模板 通过dry-run导出 --dry-run参数,运行 Dry 打印相应的API对象而不创建它们. 创建yaml模板 deploy [root@zjucst-5266 ...

  7. 如何快速创建 Rproject 文件?

    简介 昨晚在看公众号的时候,发生信技能树写了这么一篇文章:你还在复制粘贴一个Rproject文件吗.在 windows 中使用 ContextMenuManager 帮助你右键新建一个 Rprojec ...

  8. 【shell脚本创建编辑文件,读取文件】

    文章目录 一.什么是shell? 二.通过命令创建.编辑.读取文件 1.创建文件 2.编辑文件 3.读取文件 总结 一.什么是shell? Shell 是指一种应用程序,这个应用程序提供了一个界面,用 ...

  9. python excel创建kml文件

    一 创建excel文件 def tobe_excel(result, name_cn):import xlwtwork_book = xlwt.Workbook(encoding='utf-8')wo ...

最新文章

  1. ETSI MEC — 网业协同架构
  2. NCTF2019 -- PWN部分writeup
  3. [Ynoi2018]末日时在做什么?有没有空?可以来拯救吗?
  4. 流水账日记20150626
  5. Swift中的区间运算符和半开区间运算符
  6. charts引入icon图片_v-charts 踩坑之路
  7. CentOS 6.9下的iptables在本机用DNAT转发指定IP到内网IP无效的问题解决(127.0.0.1)
  8. Hadoop运行时缺少hadoop dll winutils exe
  9. pythonATM,购物车项目实战_补充1-结构图
  10. 如何评价伊隆·马斯克创办的脑机接口公司 Neuralink ?
  11. 卅三先生的工程电磁场讲座.EEm05——边界条件001
  12. 【人脸表情识别】基于视频的人脸表情识别数据集与基本方法
  13. Java 第十五次作业
  14. uva10935卡片游戏
  15. H.323 and Associated Protocols
  16. 搞编程选什么方向好?前端还是后端?阿里程序员和你聊聊就业心得
  17. 【解决思路】Spring Boot:Error creating bean with name ‘xxxDao‘
  18. Swift 中字符串截取的几种常见情况
  19. HTML5 拖放Drag和drop用法以及事件介绍
  20. Docker(一):什么是Docker?

热门文章

  1. Oracle与SQLserver区别
  2. Filament Android 编译搭建(基于Ubuntu环境)
  3. 停!别盲目跟风学Python了!网友:我太难了...
  4. 软件测试基础篇1--探索式软件测试中用到的一些方法
  5. 不等式解集怎么取_不等式的解集怎么求
  6. .aspx和.aspx.cs之间的区别
  7. android remoteviews view,Android 理解RemoteViews
  8. 聚焦“共同富裕”,盛世昊通主题会议落实履行社会责任的政策
  9. 关于两个蓝牙模块HC-05之间无线通信的AT指令设置
  10. 计算机程序设计基础(C语言版)pdf