Pagina 1 di 1

[RISOLTO]Java ed xml

Inviato: sabato 6 giugno 2015, 15:26
da Chry1991
Salve amici

sto lavorando per una compagnia software e abbiamo problemi nel leggere un file xml.
Cioe questo file xml è strutturato cosi:

Codice: Seleziona tutto

<?xml version="1.0" encoding="UTF-8"?>
<DATA>
<ANAGRAFICHE_CLIENTI>
<ROW ID_SOGGETTO="78117530"  COD_COMPAGNIA="7"  COD_AGENZIA_CANALE="4525"  COD_COMPAGNIA_CANALE_MAND="7"  COD_AGENZIA_CANALE_MAND="4525"  TITOLO=""  COGNOME="pinco"  NOME="pallino"  DENOMINAZIONE="pinco pallino"  COD_FORMA_GIURIDICA=""  INDIRIZZO="VIA PINCO"  NUM_CIVICO="6"  CAP="33040"  CITTA="POVOLETTO"  LOCALITA=""  COD_PROV="UD"  COD_NAZIONE="I"  COMUNE_NASCITA="UDINE"  DT_NASCITA="25/08/1965"  COD_SESSO="M"  COD_FISCALE="ahshjhsjhsjhsjsahajs"  COD_PARTITA_IVA_IMP=""  DES_MACRO_PROFESSIONE="OPERAIO"  COD_STATO_CLIENTE="E"  DES_MACRO_GRUPPO_ATT=""  DES_MACRO_UNITA_MERCATO="ALTRI LAVORATORI DIPENDENTI"  COD_SUBAGENTE="0"  DES_SETT_ATT_ECON=""  DES_MACRO_STATO_CIVILE="NON DEFINITO"  DES_TITOLO_STUDIO=""  COD_FASCIA_FATT=""  COD_NUM_DIPENDENTI="" />
</ANAGRAFICHE_CLIENTI>
</DATA>
ovviamente di righe row ce ne sono a milioni, ed ogni tot di queste righe capitano caratteri strani tipo una t rovesciata o una freccia a destra al posto delle parole accentate o della @.
Io vorrei fare un programma Java che legge questo xml, intercetta quei caratteri me li sostituisce e mi riscrive il file.
E' possibile?
qualcuno che mi da un suggermento??

Re: Java ed xml

Inviato: sabato 6 giugno 2015, 15:53
da SuperStep
metti tutto in una stringa e sostituisci i caratteri sbagliati con "". Poi ricrei l'XML

Re: Java ed xml

Inviato: sabato 6 giugno 2015, 15:55
da Chry1991
si ma un esempio di codice da studiare?? cioè gli esempi che ho visto in rete hanno l xml in modo diverso da quello postato da me

Re: Java ed xml

Inviato: sabato 6 giugno 2015, 16:24
da SuperStep
se non so come ricevi il codice non so nemmeno come aiutarti in maniera approfondita, comuqnue.

Supponendo che il tuo XML sia in una stringa della classe String, puoi sostituire i caratteri con il metodo replaceAll: http://docs.oracle.com/javase/7/docs/ap ... ng.String)

Esiste la classe DocumentBuilder del pacchetto java.xml.parsers che ti permette di creare un documento XML a partire da una stringa http://www.java2s.com/Code/Java/XML/Par ... Reader.htm

Re: Java ed xml

Inviato: sabato 6 giugno 2015, 17:54
da Chry1991
SuperStep [url=http://forum.ubuntu-it.org/viewtopic.php?p=4766153#p4766153][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:se non so come ricevi il codice non so nemmeno come aiutarti in maniera approfondita, comuqnue.

Supponendo che il tuo XML sia in una stringa della classe String, puoi sostituire i caratteri con il metodo replaceAll: http://docs.oracle.com/javase/7/docs/ap ... ng.String)

Esiste la classe DocumentBuilder del pacchetto java.xml.parsers che ti permette di creare un documento XML a partire da una stringa http://www.java2s.com/Code/Java/XML/Par ... Reader.htm

io il file lo ricevo come ho scritto nel primo post....c 'è l'esempio di codice...
chiedevo un esempio concreto

Re: Java ed xml

Inviato: domenica 7 giugno 2015, 2:48
da Zoff
Ma non sarebbe piu' semplice sed?

Codice: Seleziona tutto

sed -i 's/[\d128-\d255]//g' file.xml
In questo modo vengono rimossi tutti i caratteri non ascii.

Re: Java ed xml

Inviato: domenica 7 giugno 2015, 16:55
da Chry1991
cosa sarebbe quell'istruzione zoff??

è un'istruzione su linux?? e se uno stesse usando windows?? non io ovviamente, pero a lavoro i miei colleghi hanno windows

Re: Java ed xml

Inviato: lunedì 8 giugno 2015, 8:20
da Zoff
È un comando linux, può essere usato anche su windows installandolo con Cygwin.