คู่มือนี้จะอธิบายวิธีการแปลง KML เป็น CSV โดยใช้ C#** โดยมีรายละเอียดในการตั้งค่า IDE ขั้นตอนการเขียนโปรแกรม และตัวอย่างโค้ดเพื่อแปลง KML เป็น CSV พร้อมตัวเลือกในการเลือกข้อมูลที่ต้องการจากไฟล์ KML ต้นฉบับ คุณจะได้เรียนรู้วิธีบันทึกคุณลักษณะและรูปทรงของฟีเจอร์จาก KML ต้นฉบับไปยังไฟล์ CSV เอาต์พุต
ขั้นตอนการแปลงไฟล์ KML เป็น CSV โดยใช้ C#
- ตั้งค่าสภาพแวดล้อมที่จะใช้ Aspose.GIS for .NET เพื่อแปลง KML เป็น CSV ที่มีแอตทริบิวต์และรูปทรงเรขาคณิต
- โหลดไฟล์ KML ต้นฉบับโดยใช้เมธอด Drivers.Kml.OpenLayer()
- สร้างเลเยอร์ CSV โดยตั้งชื่อบนดิสก์โดยใช้เมธอด Drivers.Csv.CreateLayer()
- เพิ่มฟิลด์ลงในเลเยอร์ CSV โดยใช้คลาส FeatureAttribute
- ทำซ้ำผ่านคุณลักษณะทั้งหมดในเลเยอร์ KML ที่โหลด
- สร้างเลเยอร์ CSV โดยใช้เมธอด ConstructFeature() และตั้งค่าฟิลด์
- เข้าถึงวัตถุรูปทรงเรขาคณิตจากฟีเจอร์ KML และบันทึกในเลเยอร์ CSV
ขั้นตอนเหล่านี้อธิบายวิธีการแปลงไฟล์ KML เป็น CSV โดยใช้ C# โหลดไฟล์ KML ที่มีอยู่ สร้างเลเยอร์ CSV เพิ่มฟิลด์ในเลเยอร์ CSV วิเคราะห์ฟีเจอร์ทั้งหมดใน KML และสร้างฟีเจอร์ใหม่เพื่อบันทึกใน CSV เอาต์พุตสำหรับฟีเจอร์แต่ละรายการในเลเยอร์ KML ต้นทาง ตรวจสอบประเภทของวัตถุรูปทรงเรขาคณิตแต่ละรายการและบันทึกรายละเอียดในเลเยอร์ CSV
โค้ดสำหรับซอฟต์แวร์แปลง KML เป็น CSV โดยใช้ C#
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); | |
} | |
} | |
} | |
} | |
} |
โค้ดนี้สาธิตวิธีการพัฒนาโปรแกรมแปลง KML เป็น CSV โดยใช้ C# คุณควรมีข้อมูลเกี่ยวกับแอตทริบิวต์ของไฟล์ KML เพื่อดึงข้อมูลและบันทึกลงใน CSV คุณสามารถตรวจสอบประเภทเรขาคณิตต่างๆ เช่น CircularString, MultiCurve, MultiPoint, Point, MultiPolygon เป็นต้น
บทความนี้สอนเราเกี่ยวกับการแปลง KML เป็น CSV หากคุณต้องการทดสอบฟีเจอร์นี้ โปรดอ่านบทความใน สร้างไฟล์ KML โดยใช้ C# เพื่อสร้างไฟล์ KML ตัวอย่าง