このガイドでは、C# を使用して KML を CSV に変換する 方法について説明します。IDE 設定、プログラミング手順、およびソース KML ファイルから必要なデータを選択するオプションを使用して KML を CSV に変換するためのサンプル コードの詳細が記載されています。ソース KML から出力 CSV ファイルにフィーチャ属性とジオメトリを保存する方法を学習します。
C# を使用して KML ファイルを CSV に変換する手順
- Aspose.GIS for .NET を使用して、属性とジオメトリを含む KML を CSV に変換するように環境を設定します。
- Drivers.Kml.OpenLayer() メソッドを使用してソース KML ファイルを読み込みます
- Drivers.Csv.CreateLayer() メソッドを使用してディスク上に名前を設定して CSV レイヤーを作成します。
- FeatureAttributeクラスを使用してCSVレイヤーにフィールドを追加する
- 読み込まれたKMLレイヤー内のすべてのフィーチャを反復処理します
- ConstructFeature()メソッドを使用してCSVレイヤーを作成し、フィールドを設定します
- KMLフィーチャからジオメトリオブジェクトにアクセスし、CSVレイヤーに保存します。
これらの手順では、C# を使用して KML ファイルを CSV に変換する方法 について説明します。既存の KML ファイルを読み込み、CSV レイヤーを作成し、CSV レイヤーにフィールドを追加し、KML 内のすべてのフィーチャを解析し、ソース KML レイヤーの各フィーチャに対して出力 CSV に保存するための新しいフィーチャを構築します。各ジオメトリ オブジェクトのタイプを確認し、詳細を CSV レイヤーに保存します。
C# を使用した KML から CSV への変換ソフトウェアのコード
using System; | |
using Aspose.Gis; | |
using Aspose.Gis.Geometries; | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
var license = new License();//License for converting XML to CSV | |
license.SetLicense("license.lic"); // Load the license for CSV generation | |
string kmlFilePath = "rectangle.kml"; | |
string csvFilePath = "rectangle.csv"; | |
// Open KML | |
using (var kmlLayer = Drivers.Kml.OpenLayer(kmlFilePath)) | |
{ | |
// Create a new CSV layer for output | |
using (var csvLayer = Drivers.Csv.CreateLayer(csvFilePath, kmlLayer.SpatialReferenceSystem)) | |
{ | |
// Add fields to the CSV layer schema | |
csvLayer.Attributes.Add(new FeatureAttribute("Name", AttributeDataType.String)); | |
csvLayer.Attributes.Add(new FeatureAttribute("Description", AttributeDataType.String)); | |
csvLayer.Attributes.Add(new FeatureAttribute("Geometry", AttributeDataType.String)); | |
// Iterate through features in the KML layer | |
foreach (var kmlFeature in kmlLayer) | |
{ | |
var csvFeature = csvLayer.ConstructFeature(); | |
csvFeature.SetValue("Name", kmlFeature.GetValue("name")); | |
csvFeature.SetValue("Description", kmlFeature.GetValue("description")); | |
if (kmlFeature.Geometry.GeometryType == GeometryType.Polygon) | |
{ | |
var geometry = kmlFeature.Geometry as Polygon; | |
csvFeature.SetValue("Geometry", "Polygon: " + geometry.ExteriorRing.AsText()); | |
} | |
csvLayer.Add(csvFeature); | |
} | |
} | |
} | |
} | |
} |
このコードは、C# を使用して KML から CSV へのコンバーター を開発する方法を示しています。データを取得して CSV に保存するには、KML ファイル属性に関する情報が必要です。CircularString、MultiCurve、MultiPoint、Point、MultiPolygon などのさまざまなジオメトリ タイプを確認できます。
この記事では、KML から CSV への変換について説明しました。この機能をテストしたい場合は、サンプル KML ファイルを作成するための C# を使用して KML ファイルを作成する の記事を参照してください。