anwer86
Messages postés33Date d'inscriptionmercredi 9 novembre 2011StatutMembreDernière intervention19 avril 2013
-
15 févr. 2013 à 15:33
ammouraenig -
18 avril 2013 à 00:31
Bonjour,
Je suis novice en Java et je dois faire un fichier kml pour une application dans google earth à partir d'un fichier excel pour mon projet fin d'etude. Pour ce faire, j'ai créé une interface graphique avec un bouton qui me permette d'enregistrer le fichier kml à un endroit choisi. Cependant je n'arrive pas a trouver une solution pour convertir un fichier excel a un fichier kml , c'est pour cette raison que j'en appelle à votre savoir, peut être pourrez-vous me dépaner,je n'oublierai jamais votre aide ! merci d'avance!
bachir09
Messages postés3Date d'inscriptionvendredi 30 novembre 2007StatutMembreDernière intervention20 février 2013 18 févr. 2013 à 15:32
Bonjour,
tu dois lire le fichier excel à l'aide du java (il y a des APIs), et puis tu connais tous les noeuds donc tu commence à créer ton fichier kml à l'aide d'une API aussi javaapiforkml.jar Tapez le texte de l'url ici. bonne chance
anwer86
Messages postés33Date d'inscriptionmercredi 9 novembre 2011StatutMembreDernière intervention19 avril 2013 18 févr. 2013 à 22:05
merci pour votre reponse mais le probleme que j'ai deja essayer avec l'API kml (JAK) et j'ai telecharger les .jar aussi j'ai fait la build path pour essayer un code comme ceci mais il m'a envoyer plusieurs erreurs comme il n'accepte pas ces .jar ou ne les lires pas.
final Style style = new Style();
document.getStyleSelector().add(style);
style.setId("exampleStyleDocument");
final LabelStyle labelStyle = new LabelStyle();
style.setLabelStyle(labelStyle);
labelStyle.setColor("ff0000cc");
final Placemark placemark1 = new Placemark();
document.getFeature().add(placemark1);
placemark1.setName("Document Feature 1");
placemark1.setStyleUrl("#exampleStyleDocument");
final Point point1 = new Point();
placemark1.setGeometry(point1);
List<Coordinate> coord1 = new ArrayList<Coordinate>();
point1.setCoordinates(coord1);
coord1.add(new Coordinate(-122.371,37.816,0));
final Placemark placemark2 = new Placemark();
document.getFeature().add(placemark2);
placemark2.setName("Document Feature 2");
placemark2.setDescription("An example of BalloonStyle");
placemark2.setStyleUrl("#exampleStyleDocument");
final Point point2 = new Point();
placemark2.setGeometry(point2);
List<Coordinate> coord2 = new ArrayList<Coordinate>();
point2.setCoordinates(coord2);
coord2.add(new Coordinate(-122.370,37.817,0));
}
bachir09
Messages postés3Date d'inscriptionvendredi 30 novembre 2007StatutMembreDernière intervention20 février 2013 20 févr. 2013 à 14:50
Est ce qu'il y a des croix rouges dans ta classe?
si oui donc il faut vérifier le 'build path' parce que les jars ne sont pas pris en compte ou bien tu vérifie est ce que ce sont les biens .jars ou non?
moi j'utilise les .jars suivants : JavaAPIforKml.jar, jaxb-api-2.1.jar et jaxb-impl-2.1.5.jar pour générer des fichiers kml et ça marche.
tu peux voir des exemples ici.
salut
si tu corriges les fautes de ce code ,svp deposer dans ce site parceque je besoin ce code pour mon pfe et meme si vous trouvez autre solution svp aide moi
merci d'avance
anwer86
Messages postés33Date d'inscriptionmercredi 9 novembre 2011StatutMembreDernière intervention19 avril 2013 22 févr. 2013 à 21:12
salut ammouraenig j'ai pas trouver une solution pour cette astuce mais j'ai trouvé une autre solution en utilisant un macro appliqué sur un fichier excel je sais est ce que tu sais comment marche les macro...voir cette video par exemple
http://www.youtube.com/watch?v=2CWrs7ORhZs
salut anwer86 dsl je ne sais pas comment marche les macros .
1)pour votre code ,j'ai des erreurs seulement au niveau
"import com.sun.xml.internal.txw2.Document;"
je ne sais pas quel .jar on ajoute pour faire cette importation .
2) je essaye avec autre méthode de convertir fichier excel vers fichier xml .
mais je ne trouve pas une solution de convertir fichier xml vers fichier kml.
si qcq a des solutions svp m'aider .
merci d'avance
anwer86
Messages postés33Date d'inscriptionmercredi 9 novembre 2011StatutMembreDernière intervention19 avril 2013 23 févr. 2013 à 21:58
en utilisant java j'arrive pas a trouver code qui me permet de convertir fichier excel en fichier kml mais si tu veux telecharge ces .jar peut etre il marche avec toi le code http://code.google.com/p/javaapiforkml/downloads/list aussi telecharge ces .jar jaxb-api-2.1.jar et jaxb-impl-2.1.5.jar!! si tu veux je t'aide a savoir comment ca marche un macro avec un exemple de mon travail
anwer86
Messages postés33Date d'inscriptionmercredi 9 novembre 2011StatutMembreDernière intervention19 avril 2013 8 mars 2013 à 00:50
pour moi j'ai pas trouvé un code que me permet de convertir un fichier Excel en un fichier Kml mais comme je t'ai deja dis j'ai trouvé une autre solution a partir des macro...je vais te montrer comment appliquer une macro peut etre cela vous aide dans votre projet!!
sous l'onglet "développeur" dans votre fichier excel tu clique sur enregistrer une macro tu choisit le nom de votre macro puis "ok"..aprés tu clique sur "macros" a coté de "enregistrer une macro" tu va avoir une liste des macros appliqués sur votre fichier excel et puisque c'est ta premiere enregistrement donc tu va trouver just la macro que tu a enregistrer au debut tu clique sur lui et tu fait modifier et il va aparaitre une page ou on ecrit le code de macro!
voici par exemple le nom de mon macro est "Macro_admin_kml"
______________________________________
le code :
Sub Macro_admin_kml()
'programme en visual basic
ActiveWorkbook.Save
'********************declaration des variable****************************
Dim text As String
Dim sitename As String
Dim cellName As String
Dim date_t As String
Dim BSC As String
Dim coord_x As String
Dim coord_y As String
Dim couleur As String
text = ""
'**************entête du fichier test.kml **********************
x1 = "<?xml version=""1.0"" encoding=""UTF-8""?>"
x2 = "<kml xmlns=""http://earth.google.com/kml/2.2"">"
x3 = "<Document>"
x4 = "<name>anwer.kml</name>"
text = text + (x1 + x2 + x3 + x4)
'*********************le corps du fichier (se qui est variable) ****************
For i = 2 To 13
BSC = Feuil1.Cells(i, 1) 'recupération des valeur du tableau
sitename = Feuil1.Cells(i, 2) ' pour chaque ligne on récupère le contenu de la colonne
cellName = Feuil1.Cells(i, 3) 'cette exemple é fait que pour six colonne
date_t = Feuil1.Cells(i, 4) '5 BTS (5 ligne)
coord_x = Feuil1.Cells(i, 5)
coord_y = Feuil1.Cells(i, 6)
"
x19 = "</Folder>"
text = text + (x5 + x51 + x52 + x6 + x7 + x8 + x9 + x10 + x11 + x13 + x14 + x15 + x16 + x17 + x18 + x19)
Next i
text = text + "</Document></kml>"
'************la concaténation des lignes é contenu dans la variable text ***********
'************** text sera envoyer vers un fichier "test.kml" sous c:\test.kml*************
Open "C:\test.kml" For Output As #1 ' ****Ouvre le fichier en écriture.****
Print #1, text '**** Ecrit le texte dans le fichier.*****
'Close [1]
'********pour la mise a jour automatique sur google ,
'***il faut fair un fichier lien sur google earth qui pointe sur le fichier test.kml****
End Sub
_____________________________________
aprés ecrire le code tu fait l'enregistrement et tu ferme cette page de code et tu retourne a l'onglet "développeur" tu clique sur "macros" et tu éxecute ton macro et tu va avoir le fichier de sortie "test.kml" sous le repetoire "C" comme tu indique doans votre code...!!
salut anwer86
merci pour votre explication de macro .mais enfin j'ai devellopé un programme en java qui permet de lire fichier excel et le convertir en fichier kml.
salut anwer86
dsl je ne vois pas ton msg que ce matin .
tableau excel:
Latitude longitude name description Icône
37,155 9,793 menzel ville 12
37,105 9,79 mateur villemateur 12
anwer86
Messages postés33Date d'inscriptionmercredi 9 novembre 2011StatutMembreDernière intervention19 avril 2013 12 mars 2013 à 03:26
j'ai le tester mais il marche pas avec moi j'ai un erreur dans la console d'eclipse "at plusieurpts.main(plusieurpts.java:29)" je sais pas comment le fixer si tu as une idée et merci
salut
je voudrais exporter certaines données de google earth(fich.kml) vers un fichier (text,csv ou excel) avec un code Java.
Quelqun aurait il, au moins, un debut de reponse (morceaux de code, objets a utiliser,...) ?
est ce que on peut faire un lien sur google earth pour télécharger un fichier kml ?
merci d'avance