在某些情況下,您可能擁有 CSV 格式的地理空間數據,並且您希望從 .NET 應用程序中讀取該數據。對於此類情況,本文將教您如何使用 C# 從 CSV 文件中讀取矢量圖層特徵、點和幾何。
用於從 CSV 文件讀取矢量圖層特徵、點和幾何的 C# API
Aspose.GIS for .NET API 允許您處理以各種文件格式存儲的地理空間數據。它使您能夠渲染地圖並創建、讀取和轉換地理數據,而無需額外的軟件。此外,API 允許您從 CSV 文件中讀取矢量圖層特徵、點和幾何圖形。您可以通過 NuGet 安裝 API 或直接從 下載 部分下載。
PM> Install-Package Aspose.GIS
在 C# 中從 CSV 中讀取向量層特徵
以下是從 CSV 文件中的矢量圖層讀取特徵的步驟。
- 使用 Drivers.Csv.OpenLayer(string path) 方法加載 CSV 文件。
- 遍歷層中的屬性和特徵並打印它們的值。
以下示例代碼顯示瞭如何使用 C# 從 CSV 文件中的矢量圖層讀取特徵。
using (var layer = Drivers.Csv.OpenLayer(dataDir + "sample.csv"))
{
// 打印屬性
foreach (var attribute in layer.Attributes)
{
Console.Write($"'{attribute.Name}' ");
}
Console.WriteLine();
// 打印記錄
foreach (var feature in layer)
{
var dump = feature.GetValuesDump();
foreach (var item in dump)
{
Console.Write($"'{item}' ");
}
Console.WriteLine();
}
}
C# 中來自 CSV 的向量層點
以下是從 CSV 文件中的矢量圖層讀取點的步驟。
- 使用 Drivers.Csv.OpenLayer(string path, CsvOptions options) 方法加載 CSV 文件。
- 設置 CsvOptions 對象的 ColumnX、ColumnY、ColumnZ 和 ColumnM 屬性。
- 遍歷層中的特徵並打印點。
以下示例代碼顯示瞭如何使用 C# 從 CSV 文件中的矢量圖層讀取點。
using (var layer = Drivers.Csv.OpenLayer(dataDir + "geometries.csv",
new CsvOptions()
{
ColumnX = "x",
ColumnY = "y",
ColumnZ = "z",
ColumnM = "m"
}))
{
// 以 wkt 格式打印幾何圖形
foreach (var feature in layer)
{
Console.Write($"'{feature.Geometry.AsText()}: ");
Console.WriteLine();
}
}
在 C# 中從 CSV 中讀取向量層幾何圖形
以下是從 CSV 文件中的矢量圖層讀取幾何圖形的步驟。
- 使用 Drivers.Csv.OpenLayer(string path, CsvOptions options) 方法加載 CSV 文件。
- 設置 CsvOptions 對象的 ColumnWkt 屬性。
- 遍歷圖層中的要素並將幾何圖形打印到控制台。
以下示例代碼顯示瞭如何使用 C# 從 CSV 文件中的矢量圖層讀取幾何圖形。
using (var layer = Drivers.Csv.OpenLayer(dataDir + "geometries.csv",
new CsvOptions()
{
ColumnWkt = "geom_data"
}))
{
// 以 wkt 格式打印幾何圖形
foreach (var feature in layer)
{
Console.Write($"'{feature.Geometry.AsText()}: ");
Console.WriteLine();
}
}
獲得免費許可證
為了在沒有評估限制的情況下試用 API,您可以獲得免費的臨時許可證。
結論
在本文中,您學習瞭如何使用 C# 從 CSV 文件中讀取特徵。此外,您還了解瞭如何使用 Aspose.GIS for .NET API 從 CSV 文件中讀取點和幾何圖形。它是一個強大的 API,提供了許多用於處理地理空間數據的附加功能。您可以通過訪問 官方文檔 來詳細探索 API。如有任何疑問,請隨時通過我們的免費支持論壇與我們聯繫。