Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Ecrire dans un fichier avec xul

Envoyé par : The_Did

Date : 08/06/2007 10:48

Bonjour, je travaille sous firefox 2 je voudrai pouvoir récuperer des données d'un formulaire en ligne et les écrire dans un fichier. Cependant je ne sais pas créer un fichier et ou le créer et surtout si ce que je veux faire est possible..

merci d'avance pour vos réponse

# Re: Ecrire dans un fichier avec xul

Envoyé par : The_Did

Date : 08/06/2007 12:10

J'ai commencé par créer et écrire dans un fichier

var file = Components.classes["@mozilla.org/file/directory_service;1"]
                    .getService(Components.interfaces.nsIProperties)
                    .get("TmpD", Components.interfaces.nsIFile);
file.append("test.txt");
file.createUnique(Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 0664);
// utilisez le fichier créé
alert(file.path);

var data='hello did';
 
 // file est un nsIFile, data est une chaîne de caractères
var foStream = Components.classes["@mozilla.org/network/file-output-stream;1"]
                        .createInstance(Components.interfaces.nsIFileOutputStream);

// utiliser 0x02 | 0x10 pour ouvrir le fichier en ajout.
foStream.init(file,0x02, 0664, 0); // écrire, créer, tronquer
foStream.write(data, data.length);
foStream.close();

le probleme est qu'il me crée le fichier test.txt la:

C:\Documents and Settings\projet\Local Settings\Temp\

j'aimerai modifié le repertoire de création je pense que c'est en rapport avec :

Components.classes["@mozilla.org/storage/service;1"]

mais je ne sais pas quoi mettre à la place

# Re: Ecrire dans un fichier avec xul

Envoyé par : thefab

Date : 08/06/2007 14:35

Message illisible:

  1. Code-source considéré comme texte car ne débute pas par un espace
  2. mozilla.org/file/... considéré comme lien car pas dans code-source (voir point 1)
  3. Document mal formé à cause d'entités non terminées à cause que les liens sont tronqués après X caractères (voir point 2)

Merci de prévisualiser vos messages avant de les envoyer !

Et de ne pas poster avec IE qui affiche des pages XHTML strict alors qu'il ne devrait pas

A part ça c'est tout à fait normal que le fichire soit créé dans le dossier Temp car tu lui dis explicitement de le faire avec

  get("TmpD", Components.interfaces.nsIFile)

Lis Fichiers E/S sur MDC pour avoir des exemples de création de fichiers

# Re: Ecrire dans un fichier avec xul

Envoyé par : laurentj

Date : 08/06/2007 16:15

message reformaté :-)

# Re: Ecrire dans un fichier avec xul

Envoyé par : thefab

Date : 08/06/2007 19:50

Merci :-)

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.