View Full Version : da htm a txt
M_@_r_c_o
24-08-2006, 17:10
salve a tutti!
qualcuno può aiutarmi?
avrei bisogno di aprire un file .htm (in c/c++) e cancellare tutti i tag, cioè tutte la parole tra "<>" facendo si k rimanga solo il testo. come potrei fare?
se non mi sono spiegato bene:
FILE.HTM
<html>
<head></head>
<body>
<p>testo</p>
</body>
</html>
io vorrei cancellare tutti i tag lasciando solo il testo.. ki può aiutarmi?
ah! dimenticavo... dovrei eseguire questa operazione su più files 10.000 circa...
grazie a tutti comunque!
ciaoooo!
10.000 circa...:eek: :eek: :eek:
non posso aiutarti ma posso sapere a cosa ti serve? Sarei curioso :)
Marco Giunio Silano
25-08-2006, 11:08
salve a tutti!
qualcuno può aiutarmi?
avrei bisogno di aprire un file .htm (in c/c++) e cancellare tutti i tag, cioè tutte la parole tra "<>" facendo si k rimanga solo il testo. come potrei fare?
se non mi sono spiegato bene:
FILE.HTM
<html>
<head></head>
<body>
<p>testo</p>
</body>
</html>
io vorrei cancellare tutti i tag lasciando solo il testo.. ki può aiutarmi?
ah! dimenticavo... dovrei eseguire questa operazione su più files 10.000 circa...
grazie a tutti comunque!
ciaoooo!
apri il file, lo scanni e riporti su un altro file ciò che trovi che non è incluso fra <>...
leggi 1 byte, è <? sì, allora, finchè non trovi > tutto ciò che leggi lo riporti si là e smetti quando trovi <.... etc il lo gestirei in binario...
BountyKiller
25-08-2006, 13:07
copiare siti non è bello...... dovresti avere per lo meno il permesso degli autori
M_@_r_c_o
25-08-2006, 13:29
grazie a tutti... comunque questi files non sono stati copiati da nessun sito... cmq non capisco come "scandire" il file... ma non c'èuna funzione apposita per cancellare le stringhe nei files?
ciao
Prove con le espressioni regolari..dovrebbe essere un buon metodo
M_@_r_c_o
25-08-2006, 13:44
scusa la mia ignoranza... k cosa sono? :confused: :confused: :confused:
per ianaz:
a cosa mi serve?
ho molti files htm k vorrei convertire in poche parole in .rtf, ovviamente senza tutti i tag....
Marco Giunio Silano
25-08-2006, 13:46
grazie a tutti... comunque questi files non sono stati copiati da nessun sito... cmq non capisco come "scandire" il file... ma non c'èuna funzione apposita per cancellare le stringhe nei files?
ciao
potresti scaricare tutto il file in un buffer di memoria, poi cerchi > (strchr) puntatore A. A++ e questo è l'indirizzo del tuo nuovo buffer pulito dal primo tag. Cerchi < e ottinei B, da A a B lo sposti in un nuovo buffer. B++ e ripeti la ricerca di prima. quando hai nuovamente l'intervallo A..B, fai un cat del buffer risultato con intervallo A..B.
M_@_r_c_o
25-08-2006, 13:50
grazie... mi hai illuminato... grazie ancora!!! :D :D :D :D :D :D
Marco Giunio Silano
25-08-2006, 14:03
grazie... mi hai illuminato... grazie ancora!!! :D :D :D :D :D :D
;) buon lavoro e facci sapere ...
scusa la mia ignoranza... k cosa sono? :confused: :confused: :confused:
tutti i tag....
Con le espressioni regolari puoi specificare le regole per identificare delle stringhe che a te interessano e, nel tuo caso specifico, sostituirle per esempio con "", in modo da togliere dai file tutti i tag
ad esempio una espressione regolare per riconoscere i tag HTML potrebbe essere
'<.*>'...ossia tutte le stringhe che iniziano per '<' finiscono per '>' e contengono un numero arbitrario di caratteri.
Marco Giunio Silano
25-08-2006, 14:32
Con le espressioni regolari puoi specificare le regole per identificare delle stringhe che a te interessano e, nel tuo caso specifico, sostituirle per esempio con "", in modo da togliere dai file tutti i tag
ad esempio una espressione regolare per riconoscere i tag HTML potrebbe essere
'<.*>'...ossia tutte le stringhe che iniziano per '<' finiscono per '>' e contengono un numero arbitrario di caratteri.
Come lo fai con codice C?
Non sono per niente pratico di C, ma qualcuno qui di sicuro sa come aiutarti
Marco Giunio Silano
25-08-2006, 15:01
Non sono per niente pratico di C, ma qualcuno qui di sicuro sa come aiutarti
:what:
Va bene, ma il problema/necessità di M_@_r_c_o è, appunto farlo in C. :uh:
La tua teoria è perfetta, il problema è come applicarla by code, ma, a grandi linee, ciò che dici tu è ciò che ho spiegato qualche post precedente parlando di puntatori ed intervalli di testo.
per ianaz:
a cosa mi serve?
ho molti files htm k vorrei convertire in poche parole in .rtf, ovviamente senza tutti i tag....
Si ok, ma 10'000....ci sarà un motivo no?! :)
Marco Giunio Silano
25-08-2006, 18:02
Si ok, ma 10'000....ci sarà un motivo no?! :)
Vediamo sempre del marcio dappertutto... circa un anno fa avevo della doc che il cliente inviava in formato html, centinaia di pagine e archiviarla era scomodo. Forse, se l'avessi codificata in word o simili mi sarei semplificato la vita. Nel suo caso non so, e vorglio dare per scontato che sia qualcosa di "pulito".
Marco Giunio Silano
25-08-2006, 18:08
vedi un po...
http://www.hwupgrade.it/forum/showthread.php?t=1265453
M_@_r_c_o
25-08-2006, 21:20
.... comunque io di php non ci capisco niente... forse perchè non ho mai provato a studiarlo.....
allora: per non evitare altri fraintendimenti questi documenti sono di lavoro... adesso per archiviare questi dati usiamo il formato rtf e non più html... ok??
Marco Giunio Silano
28-08-2006, 08:12
Ci sei riuscito?
Probabilmente t basta un programma tipo Dreamweaver... con l'opzione Find and Replace, usi una Regular Expression e gliela fai fare su tutta una cartella (contenente i files)
...ovviamente fai sostituire i tag con nulla...
Io l'ho atto su dei file xml, è stato muy veloce
DarkSiDE
28-08-2006, 20:19
Probabilmente t basta un programma tipo Dreamweaver... con l'opzione Find and Replace, usi una Regular Expression e gliela fai fare su tutta una cartella (contenente i files)
...ovviamente fai sostituire i tag con nulla...
Io l'ho atto su dei file xml, è stato muy veloce
già, ti consiglio di utilizzare qualcosa con le espressioni regolari
http://www.hwupgrade.it/forum/showthread.php?t=1254971
è java, dai un'occhiata, dovrebbe risultarti interessante
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.