CSV形式の地理空間データがあり、.NETアプリケーション内からそのデータを読み取りたい場合があります。このような場合、この記事では、C#を使用してCSVファイルからベクターレイヤーの特徴、ポイント、およびジオメトリを読み取る方法を説明します。

CSVファイルからベクターレイヤーの特徴、ポイント、ジオメトリを読み取るためのC#API

Aspose.GIS for .NET APIを使用すると、さまざまなファイル形式で保存された地理空間データを操作できます。追加のソフトウェアなしで、地図をレンダリングし、地理データを作成、読み取り、変換する機能を提供します。さらに、APIを使用すると、CSVファイルからベクターレイヤーの特徴、ポイント、およびジオメトリを読み取ることができます。 APIは、NuGetからインストールするか、ダウンロードセクションから直接ダウンロードできます。

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ファイルのベクターレイヤーからポイントを読み取る手順です。

次のサンプルコードは、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ファイルのベクターレイヤーからジオメトリを読み取る手順です。

次のサンプルコードは、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の詳細を調べることができます。ご不明な点がございましたら、無料サポートフォーラムまでお気軽にお問い合わせください。

関連項目