Ouvrir et enregister des fichiers

Vous vous penchez sur le développement d'applications ou d'extensions pour Mozilla ? C'est alors vers ce forum que se dirigeront naturellement vos requêtes...

Modérateur : chBok

Répondre
Gerard
Arias
Messages : 2
Enregistré le : 18 nov. 2003, 15:32

Ouvrir et enregister des fichiers

Message par Gerard » 18 nov. 2003, 15:52

Bonjour,

J'aimerai savoir comment faire pour obtenir la boite d'ouverture et d'enregistrement de fichiers en XUL.

J'ai testé l'exemple donné sur xulplanet.com mais ça n'a pas marché.
J'ai aussi installé et utilisé jslib, mais ça n'a pas marché non plus.
Je n'ai même pas la boite de dialogue qui apparait.

Je précise que j'utilise Mozilla Firebird 0.7. Pourtant, avec certaines extensions ça marhce.

Merci,

Gerard.

takochan
Arias
Messages : 11
Enregistré le : 16 nov. 2003, 11:28

Message par takochan » 20 nov. 2003, 17:13

Chez moi, ca marche...

Avec cette fonction:

Code : Tout sélectionner

function getFile() {
  var nsIFilePicker = Components.interfaces.nsIFilePicker;
  var fp = Components.classes["@mozilla.org/filepicker;1"]
          .createInstance(nsIFilePicker);
  fp.init(window, "Select a File", nsIFilePicker.modeOpen);
  fp.appendFilters(nsIFilePicker.filterAll | nsIFilePicker.filterText);
  var res=fp.show();
  if (res==nsIFilePicker.returnOK){
    return fp.file.path;
  }
  return "";
}
qui permet de demander a l'utilisateur un nom de fichier. Genre:

Code : Tout sélectionner

var filePath = getFile()
va ouvrir une boite de dialogue et recuperer le nom du fichier selectionne.

Ensuite, et c'est un autre probleme, il faut utiliser jslib pour ouvrir le fichier en connaissant son chemin complet.

Code : Tout sélectionner

include('chrome://jslib/content/io/file.js');

var f = new File(filePath);  // on le connait grace a la fonction precedente !
// Eventuellement on teste qu'il existe bien, normalement pas de pbs
if (!f.exists())
{
  alert("Unable to find " + filePath);
  return;
}
f.open();
Support a la lecture de sites en japonais
http://moji.mozdev.org

Invité

Message par Invité » 20 nov. 2003, 22:57

Merci pour ta réponse.

En fait je viens de résoudre le problème mais je ne sais pas exactement pourquoi ça ne marchit pas.
J'utilise Firebird et je me suis apperçu qu'en intégrant mon application dans le menu outils, les boîtes d'ouverture de fichier fonctionnent. Alors que si je lance mon application en doucle-cliquant, les boîtes d'ouverture de fichier ne s'ouvrent pas.
Sais-tu quel est la cause de ce phénomène ? Est-ce que ce problèmeest présent dans Mozilla ?

takochan
Arias
Messages : 11
Enregistré le : 16 nov. 2003, 11:28

Message par takochan » 21 nov. 2003, 05:49

Non, je ne sais pas pourquoi. Je te conseille de demander ca sur les forums Mozillazine (en anglais), il y a beaucoup de MAD qui s'y connaissent bien.
Support a la lecture de sites en japonais
http://moji.mozdev.org

Répondre

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités