IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Erreur lors de la conversion Excel vers kml


Sujet :

Langage Java

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2013
    Messages : 1
    Points : 3
    Points
    3
    Par défaut Erreur lors de la conversion Excel vers kml
    Salut,

    J'essaie de faire un fonction pour convertir un fichier Excel vers kml mais mon problème lorsque j'introduis le fichier kml dans google earth, il n'y a pas affichage des points sur la carte.

    J'essaie d'ajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Attribute a=new Attribute("xmlns","http://www.opengis.net/kml/2.2");
    racine.setAttribute("xmlns", "http://www.opengis.net/kml/2.2");
    Mais Eclipse affiche l'erreur suivante :
    Exception in thread "main" org.jdom.IllegalNameException: The name "xmlns" is not legal for JDOM/XML attributes: An Attribute name may not be "xmlns"; use the Namespace class to manage namespaces.)
    Quelqu'un aurait-il une idée ? Merci d'avance pour votre aide.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    package pfe;
    import javax.xml.bind.annotation.XmlType;
    	 import javax.xml.bind.annotation.XmlSchema;
    	 import javax.xml.bind.annotation.XmlRootElement;
             import java.io.*;
    	  import jxl.Cell;
    	import jxl.Sheet;
    	import jxl.Workbook;
    	import jxl.read.biff.BiffException;
    	import java.io.*;
    	//JDOM
    	import org.jdom.transform.*;
    	import org.jdom.output.*;
    	//TrAX
    	 import javax.xml.transform.*;
    	 import javax.xml.transform.stream.StreamSource;
             import org.jdom.*;
    	 import org.jdom.output.*;
    	 public class Toutexceltokml {
     
    		   //Nous allons commencer notre arborescence en créant la racine XML
    		   //qui sera ici "personnes".
    		   static Element racine = new Element("kml");
    		   //On crée un nouveau Document JDOM basé sur la racine que l'on   vient de créer
    		   static org.jdom.Document document = new Document(racine);
    		  // static org.jdom.Document document1 = new Document(racine2);
     
    		   public static void main(String[] args) throws BiffException,           IOException
    		   {
    			  // Attribute a=new         Attribute("xmlns","http://www.opengis.net/kml/2.2");
    		   //racine.setAttribute("xmlns", "http://www.opengis.net/kml/2.2");
     
     
                          Element cellule1 = new Element("Placemark");
     
                         racine.addContent(cellule1);
    		        Workbook workBook = null;
    			FileInputStream filein = null;
    				String nameFile = "d:\\path.xls";
    				filein = new FileInputStream(nameFile);
    				workBook = Workbook.getWorkbook(filein);
    			//	static Element racine = new Element("");
    				//static org.jdom.Document document = new Document(racine);
    		    Sheet onglet1 = workBook.getSheet(0);
     
    		      for (int i = 0; i < onglet1.getRows(); i++) {
     
    		      for(int j =0;j<onglet1.getColumns();j++)
    			{ Cell cell= (Cell) onglet1.getCell(j,i);
    			Cell cell1= (Cell) onglet1.getCell(j,0);	
    		       System.out.println(cell1.getContents().toString());
    	     Element cellule = new Element( cell1.getContents().toString());
    		             cellule.setText(cell.getContents().toString());
     
    		              cellule1.addContent(cellule);}
     
     
     
    		      //Les deux méthodes qui suivent seront définies plus loin dans l'article
    		     affiche();
    		     enregistre("d:\\Toutexceltokml.kml");
     
    		   }}
     
    			// TODO Auto-generated method stub
     
     
     
    		 private static void affiche() {
     
    		      try
    		      {
    		        //On utilise ici un affichage classique avec getPrettyFormat()
    		        XMLOutputter sortie newXMLOutputter(Format.getPrettyFormat());
     
    		         sortie.output(document, System.out);
    		      }
    		      catch (java.io.IOException e){}
    		   }
     
     static void enregistre(String fichier)
     {
       tr {
     
    		  XMLOutputter sortie = newXMLOutputter(Format.getPrettyFormat());
     
    		         sortie.output(document, new FileOutputStream(fichier));
    		      }
    		      catch (java.io.IOException e){}
    		   }
    		}

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 547
    Points : 21 602
    Points
    21 602
    Par défaut
    Bonjour,

    Citation Envoyé par ammourabizerte Voir le message
    Quelqu'un aurait-il une idée ?
    Le message d'erreur se termine par "use the Namespace class to manage namespaces." Une idée serait de faire exactement ça.

    Les namespaces ne se gèrent pas comme si c'était des attributs. Ce n'en sont pas. Il va falloir apprendre la notion de namespace en XML.

    Bon courage.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. script conversion Excel vers fichier KML ou KMZ
    Par aminepop dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 26/07/2010, 13h19
  2. Erreur lors de la conversion de MyISSAM vers InnoDB
    Par faico dans le forum Requêtes
    Réponses: 12
    Dernier message: 26/08/2006, 23h25
  3. [VBA-E] macro conversion excel vers csv
    Par baboune dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 15/07/2004, 10h23
  4. Réponses: 2
    Dernier message: 21/06/2004, 16h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo