2017-11-08 24 views
0

私のCSVファイルをkmlファイルに変換しようとしています。 私はarraylistを受け取ったメソッドを作成しました。 私はkmlファイルがGoogle Earth上で実行されていない理由を理解していません。関数が取得csvファイルをKMLに変換する

static void writeFileKML(ArrayList<String[]> a, String output) { 
    ArrayList<String> content = new ArrayList<String>(); 
    String kmlstart = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + 
      "<kml xmlns=\"http://www.opengis.net/kml/2.2\">\n"; 
    content.add(kmlstart); 

    String kmlend = "</kml>"; 
    try{ 
     FileWriter fw = new FileWriter(output); 
     BufferedWriter bw = new BufferedWriter(fw); 
     for (int i = 1; i < a.size(); i++) { 
      String[] s = a.get(i); 
      String kmlelement ="<Placemark>\n" + 
        "<name>"+s[6]+"</name>\n" + 
        "<description>"+s[6]+"</description>\n" + 
        "<Point>\n" + 
        "<coordinates>"+s[3]+","+s[2]+"</coordinates>" + 
        "</Point>\n" + 
        "</Placemark>\n"; 
      content.add(kmlelement); 
     } 
     content.add(kmlend); 
     String csv = content.toString().replaceAll(",", "").replace("[", "").replace("]", ""); 
     bw.write(csv); 
     bw.close(); 
    } 
    catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 

CSVファイルを別の場所からmultipule WiFiネットワークが含まれています

は、ここに私のコードです。

ありがとうございました。

+1

[mcve]:短いテストデータ(入力配列リスト)を含めると、出力として何を期待してください。 – c0der

答えて

0

KMLの目印のコレクションは、Documentまたは<kml>要素のすぐ内側にないFolder親要素内に含まれている必要があります。

最も外側の要素を<Document>要素にします。

<?xml version="1.0" encoding="UTF-8"?> 
<kml xmlns="http://www.opengis.net/kml/2.2"> 
<Document> 
    <Placemark>...</Placemark> 
    <Placemark>...</Placemark> 
</Document> 
</kml> 
関連する問題