Es kann Situationen geben, in denen Sie KML Dateien in das GeoJSON Format oder umgekehrt konvertieren müssen. In solchen Fällen erfahren Sie in diesem Artikel, wie Sie KML Dateien in das GeoJSON Format und GeoJSON Dateien in das KML Format mit C# konvertieren.

C# API zum Konvertieren von KML Dateien in GeoJSON und umgekehrt

Mit der Aspose.GIS for .NET-API können Sie Karten rendern und geografische Daten ohne zusätzliche Software erstellen, lesen und konvertieren. Darüber hinaus können Sie mit der API KML Dateien in das GeoJSON Format konvertieren und umgekehrt. Sie können die API entweder über NuGet installieren oder direkt aus dem Abschnitt Downloads herunterladen.

PM> Install-Package Aspose.GIS

Konvertieren Sie KML Dateien mit C# in das GeoJSON Format

Im Folgenden sind die Schritte zum Konvertieren von KML Dateien in das GeoJSON Format aufgeführt.

Der folgende Beispielcode zeigt, wie eine KML Datei mit C# in das GeoJSON Format konvertiert wird.

string dataDir = RunExamples.GetDataDir();
string sourceFile = dataDir + "Kml_File.kml";
string outputFile = dataDir + "output.geojson";

// Geben Sie bei Bedarf Konvertierungseinstellungen an. Es ist optional.
ConversionOptions options = null;

// Diese Option weist Wgs84 der Zielebene zu.
// Die Konvertierung kann einen Fehler auslösen, wenn der Ziel-Layer den Wgs84-Raumbezug nicht unterstützt. Musst also prüfen.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// Konvertieren Sie das Dateiformat von KML in GeoJSON
VectorLayer.Convert(sourceFile, Drivers.Kml, outputFile, Drivers.GeoJson, options);

Konvertieren von GeoJSON Dateien in das KML Format mit C#

Im Folgenden sind die Schritte zum Konvertieren von GeoJSON Dateien in das KML Format aufgeführt.

Der folgende Beispielcode zeigt, wie eine GeoJSON Datei mit C# in das KML Format konvertiert wird.

string dataDir = RunExamples.GetDataDir();
string sourceFile = dataDir + "intersection.geojson";
string outputFile = dataDir + "output.kml";

// Geben Sie bei Bedarf Konvertierungseinstellungen an. Es ist optional.
ConversionOptions options = null;

// Diese Option weist Wgs84 der Zielebene zu.
// Die Konvertierung kann einen Fehler auslösen, wenn der Ziel-Layer den Wgs84-Raumbezug nicht unterstützt. Muss man also prüfen.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// Konvertieren Sie das Dateiformat von GeoJSON in KML.
VectorLayer.Convert(sourceFile, Drivers.GeoJson, outputFile, Drivers.Kml, options);

Holen Sie sich eine kostenlose Lizenz

Um die API ohne Evaluierungseinschränkungen zu testen, können Sie eine kostenlose temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie mit C# KML Dateien in das GeoJSON Format konvertieren und umgekehrt. Die freigegebenen code snippets zeigen, wie Sie diese Conversions mit nur wenigen Codezeilen erreichen. Aspose.GIS for .NET ist eine robuste und funktionsreiche API, die Sie bei der Arbeit mit Geodaten unterstützt. Sie können die API im Detail erkunden, indem Sie die offizielle Dokumentation besuchen. Bei Fragen können Sie uns gerne in unserem kostenlosen Support-Forum erreichen.

Siehe auch