KML 是 Keyhole Markup Language 的縮寫,它是從 XML 符號擴展而來的。它是一種GIS文件格式,用於顯示地理信息。您可以通過編程方式創建 KML 文件,也可以使用 C# 語言從中讀取信息。讓我們探索以下與 KML 文件格式相關的部分:
創建或讀取 KML 文件 – API 安裝
Aspose.GIS for .NET API 支持使用 KML 文件以及其他幾種支持的文件格式。讓我們安裝 API 以在基於 .NET 的應用程序中操作矢量文件。您需要從 New Releases 部分或使用以下安裝命令從 NuGet 庫下載 API:
PM> Install-Package Aspose.GIS
配置 API 後,您就可以創建或操作 KML 文件了。現在您無需擔心次要細節,因為您只需要進行簡單的 API 調用。讓我們繼續了解更多細節:
使用 C# 以編程方式創建 KML 文件
KML 文件與 XML 文件一樣遵循基於標籤的結構。您可以使用 KML 文件來精確定位位置、規劃或跟踪您的行程以及許多其他重要場景。您可以使用 C# 通過以下步驟以編程方式創建 KML 文件:
以下代碼片段是關於如何在 C# 中以編程方式創建 KML 文件的基本且簡單的演示:
// 創建圖層
using (var layer = Drivers.Kml.CreateLayer(dataDir + "Kml_File_out.kml"))
{
// 初始化幾何和屬性的特徵
layer.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));
// 設置不同屬性的值
Feature 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) });
// 將功能添加到特定圖層
layer.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 文件的任何特徵:
下面的代碼片段展示瞭如何在 C# 中以編程方式從 KML 文件中讀取要素:
// 使用 OpenLayer 方法加載輸入 KML 文件
using (var layer = Drivers.Kml.OpenLayer(dataDir + "Kml_File.kml"))
{
// 獲取特徵數
int count = layer.Count;
// 訪問特定索引處的功能
Feature featureAtIndex1 = layer[0];
Console.WriteLine(featureAtIndex1.GetValue<string>("string_data"));
Feature featureAtIndex2 = layer[1];
Console.WriteLine(featureAtIndex2.GetValue<string>("string_data"));
}
結論
在本文中,我們探討瞭如何使用 KML 文件。我們已經學習瞭如何在 C# 示例代碼的幫助下創建 KML 文件或以編程方式讀取其功能。同樣,您可以探索如何使用其他幾種 GIS 文件格式。您可以訪問 產品文檔 或在 免費支持論壇 寫信給我們,討論您的任何疑慮。我們很樂意為您提供幫助!