View Full Version : [Javascript XUL]Salvare file su disco
Come si fa a salvare un cavolo di file sull'hard disk?
Ho trovato questo http://www.captain.at/programming/xul/ ma mi solleva sempre l'eccezzione che mi dice che non ho i permessi...eppure ci deve essere un modo altrimenti come fanno le estensioni di firefox a salvare i file di opzioni?
Come si fa a salvare un cavolo di file sull'hard disk?
Ho trovato questo http://www.captain.at/programming/xul/ ma mi solleva sempre l'eccezzione che mi dice che non ho i permessi...eppure ci deve essere un modo altrimenti come fanno le estensioni di firefox a salvare i file di opzioni?Non vorrei dire una cavolata, vista l'ora :D (anche perché non ho tempo adesso di verificarlo) ma credo che scrivere sul file-system sia possibile solo se il codice fa parte di una estensione del browser, non di un file XUL "sciolto" caricato nel browser come qualunque altra pagina web.
per ora il codice lo stavo testando "sciolto" siccome dubito che te dici cavolate ora impacchetto tutto e lo provo come estensione vera e propria. :D
ci hai preso, come estensione ha tutti i previlegi :D
andbin ho un problemino, controlla un attimo le references di nsIFileOutputStream (http://www.xulplanet.com/references/xpcomref/ifaces/nsIFileOutputStream.html)
#define PR_RDONLY 0x01
#define PR_WRONLY 0x02
#define PR_RDWR 0x04
#define PR_CREATE_FILE 0x08
#define PR_APPEND 0x10
#define PR_TRUNCATE 0x20
#define PR_SYNC 0x40
#define PR_EXCL 0x80
outputStream.init(file,0x04|0x10|0x20,420,0);
A me servere fare un file append, ho provato così ma non va bene, mi scrive sul file solo l'ultima cosa scritta...
Io lo stream lo chiudo sempre dopo la scrittura, può essere che non deve essere chiuso se faccio l'append?
Ovviamente lo apro, scrivo e lo chiudo, tutte le volte...lo dovrei tenere aperto?
La tua esperienza che dice? :D
A me servere fare un file append, ho provato così ma non va bene, mi scrive sul file solo l'ultima cosa scritta...nsIFileOutputStream purtroppo non l'ho mai usato e non lo conosco (non sono esperto di XPCOM!) ... però dai flag che hai indicato vedo che usi il flag di "truncate". Questo tronca il file.
ho provato infatti a toglierlo ma poi nel file ci sono dati che non mi tornano!
ho provato infatti a toglierlo ma poi nel file ci sono dati che non mi tornano!Cioè?? Che tipo di file è?
un file di testo dove salvo una stringa di numeri, se metto troncate i numeri non mi tornano, non sono reali.
un file di testo dove salvo una stringa di numeri, se metto troncate i numeri non mi tornano, non sono reali.Beh, comunque se vuoi sempre aggiungere testo al file, non devi troncarlo ... e qui penso che non ci sia nulla da obiettare.
Puoi fare qualche esempio di cosa di scrive che ti aspetti o meno??
Certo, in pratica traccio il movimento del mouse, e creo una stringa di coordinate x e y, esempio:
"100 23 345 55 67 67 120 55"
sono 4 coordinate, salvate come x y x y x y x y.
Ecco, a volte mi trovo dei numeri impossibilmente grandi per essere coordinate.
Certo, in pratica traccio il movimento del mouse, e creo una stringa di coordinate x e y, esempio:
"100 23 345 55 67 67 120 55"
sono 4 coordinate, salvate come x y x y x y x y.
Ecco, a volte mi trovo dei numeri impossibilmente grandi per essere coordinate.Tipo?? Le coordinate da dove le prendi?? Con che tipo di dato sono rappresentate??? Sono coordinate relative o assolute??
sono coordinate relative alla finestra del browser, le coordinate sono rappresentate da stringhe.
mi sa che ho trovato l'inghippo...non te lo dico perchè mi vergogno :cry:
Ora che funziona passiamo allo step successivo, cosa è consigliato usare per salvare sul un database una stringa molto "sostanziosa"? si parla anche di qualche centinaia di KBytes...
O comunque di solito in questi casi cosa è conveniente usare?
cosa è consigliato usare per salvare sul un database una stringa molto "sostanziosa"? si parla anche di qualche centinaia di KBytes...Se stai parlando di database relazionali tipo MySQL e simili, ci sono dei tipi di campo appositi. Ad esempio in MySQL c'è il tipo BLOB (per sequenze di dati binari) e il tipo TEXT (per sequenze di caratteri). Questi 2 tipi hanno dei sottotipi che variano solo per la lunghezza massima.
Il mio scopo è quello di salvare su una posizione remota(pensavo ad un sito online,per questo ho chiesto del db) diversi file di testo con dimensioni decisamente rilevanti.
Un database va bene per fare questo genere di cose?
I file di testo devono poter essere letti dagli utenti che fanno una query, cioè devono poter essere facilmente identificati e raggiunti.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.