Xml. è possibile importare un testo da un file txt?

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
batello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 589
Iscrizione: lunedì 2 giugno 2008, 11:30

Xml. è possibile importare un testo da un file txt?

Messaggio da batello »

Ho il file xml fatto in questo modo
file.xml

Codice: Seleziona tutto

<box>
<title> Titolo del box </title>
<description> ... </description>
</box>
Siccome la descrizione è un testo piuttosto lungo, è possibile evitare di scriverla nel file xml e scriverla in un file txt e poi importarla dentro file.xml?
melfnt
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1312
Iscrizione: sabato 15 ottobre 2011, 22:25

Re: Xml. è possibile importare un testo da un file txt?

Messaggio da melfnt »

La risposta dipende da come utilizzerai il file dopo.
Per esempio, potresti scrivere una cosa come

Codice: Seleziona tutto

<description> @filename.txt </description>
dove filename.txt è il nome del file dove è scritta la descrizione e il fatto che inizi con la @ è una cosa che mi sono inventato ora e significa "quello che segue è il nome di un file e non un testo semplice".

Dopo di che, nel programma dove parsi l'xml dovrai fare un controllo sul campo description, e se inizia con la @ aprire il file relativo e leggerne il contenuto.

Non so se sono stato chiaro, magari posta anche un pezzo di codice dove andrai a leggere il file xml

(;
batello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 589
Iscrizione: lunedì 2 giugno 2008, 11:30

Re: Xml. è possibile importare un testo da un file txt?

Messaggio da batello »

melfnt [url=http://forum.ubuntu-it.org/viewtopic.php?p=4780302#p4780302][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Non so se sono stato chiaro, magari posta anche un pezzo di codice dove andrai a leggere il file xml

(;
In effetti non è che abbia capito molto. Chiedo scusa.
Questo qui è il codice.

Codice: Seleziona tutto

<div>
	<ul class="headerMenu" role="tablist">
		<x:forEach select="$con/index/header-menu" var="item" varStatus="position">
			<li role="presentation">
				<a onclick="mostraDescrizione()" href="#<c:out value="hm-description_${position.index}"/>" aria-controls="<c:out value="hm-description_${position.index}"/>" role="tab" data-toggle="tab">
					<x:out select="$item/title" escapeXml="false"/>
				</a>
			</li>
		</x:forEach>
	</ul>
</div>

...

<div class="tab-content descriptionContainer">
	<x:forEach select="$con/index/header-menu" var="item" varStatus="position">
		<p class="tab-pane" id="<c:out value="hm-description_${position.index}"/>"><x:out select="$item/description" escapeXml="false"/></p>
	</x:forEach>
</div>

dove "header-menu" è quello che nel primo post avevo chiamato "box"
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8242
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: Xml. è possibile importare un testo da un file txt?

Messaggio da crap0101 »

non si poteva fare usando ENTITY?
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
batello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 589
Iscrizione: lunedì 2 giugno 2008, 11:30

Re: Xml. è possibile importare un testo da un file txt?

Messaggio da batello »

melfnt
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1312
Iscrizione: sabato 15 ottobre 2011, 22:25

Re: Xml. è possibile importare un testo da un file txt?

Messaggio da melfnt »

Provo a fare un po' di chiarezza con un esempio: vorresti passare da una struttura tipo questa:
box.xml

Codice: Seleziona tutto

....
<box>
...
<description> Ciao Mondo </description>
</box>
che interpreti così:

Codice: Seleziona tutto

<x:out select="$item/description" escapeXml="false"/>
A una tipo questa:
box.xml:

Codice: Seleziona tutto

....
<box>
...
<description> @box1.txt </description>
</box>
box1.txt:

Codice: Seleziona tutto

Ciao Mondo
Indipendentemente dalla sintassi e dal nome dei file.
Potresti assumere che @box1.txt significhi "la descrizione di questo box si trova nel file box1.txt".

Quindi, quando vai a parsare il file xml:

Codice: Seleziona tutto

<x:out select="$item/description" escapeXml="false"/>
Restituirà il nome del file dove è salvata la descrizione (@box1.txt) e non la stringa della descrizione.
A questo punto dovresti:
- Togliere la chiocciola iniziale per ottenere il nome del file
- Leggere il contenuto del file
- Metterlo dentro il div
batello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 589
Iscrizione: lunedì 2 giugno 2008, 11:30

Re: Xml. è possibile importare un testo da un file txt?

Messaggio da batello »

Mh, ok. È un po' più chiaro.
Nei prossimi giorni provo e ti farò sapere.
Grazie mille
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 25 ospiti