簡體   English   中英

將數據表導出到 KML 文件

[英]Export Datatable to KML file

伙計們,當我使用 c# 將 1000 條記錄的數據導出到 KML 文件時遇到問題,當我導出它時,只有最后一個地標寫入 kml 文件,但我不知道為什么...

這是我的代碼

public static void generar_kml(DataTable data_gps)
{
    var document = new Document();
    var kml = new Kml();
    Placemark placemarks;
    Point Punto_gps;
    foreach (DataRow datatable in data_gps.Rows)
    {
        Punto_gps = new Point();
        Punto_gps.Coordinate = new 
        Vector(double.Parse(datatable["Long"].ToString()),
        double.Parse(datatable["Lat"].ToString()));
        placemarks = new Placemark();
        placemarks.Name = datatable["Place"].ToString();
        placemarks.Geometry = Punto_gps;
        kml.Feature = placemarks;
    }
    Serializer serializer = new Serializer();
    serializer.Serialize(kml);
    Console.WriteLine(serializer.Xml);
    Console.ReadKey();  
}

這是輸出;

<?xml version="1.0" encoding="utf-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Placemark>
    <name>Name of place</name>
<Point>
    <coordinates>-84.135109999999997,9.9416100000000007</coordinates>
</Point>
</Placemark>
</kml>"

您需要添加 document.AddFeature(placemarks); 在foreach里面。 您不需要 kml.feature 行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM