Créer un fichier texte en JavaScript

J'essaie de créer un fichier texte en utilisant JavaScript, je sais qu'il est possible en utilisant un objet ActiveX, mais il fonctionne bien uniquement sur les navigateurs IE.

Ma requête est de générer un fichier texte en utilisant JavaScript pour les navigateurs Safari?

Quelqu'un peut-il m'aider à cet égard?

    Une autre façon de le faire serait d'utiliser un Blob et un URL.createObjectURL . Tous les navigateurs récents, y compris Safari 6+, les supportent.

     var textFile = null, makeTextFile = function (text) { var data = new Blob([text], {type: 'text/plain'}); // If we are replacing a previously generated file we need to // manually revoke the object URL to avoid memory leaks. if (textFile !== null) { window.URL.revokeObjectURL(textFile); } textFile = window.URL.createObjectURL(data); // returns a URL you can use as a href return textFile; }; 

    Voici un exemple qui utilise cette technique pour enregistrer des textes arbitraires à partir d'une zone de textarea .

    Une autre chose à noter à propos de l'exemple est que j'ai utilisé l' attribut de download sur le lien de téléchargement. Malheureusement, Safari ne l'utilise pas actuellement. Cependant, dans les navigateurs qui le font, le fichier sera automatiquement téléchargé lorsqu'il sera cliqué au lieu d'ouvrir le fichier dans le navigateur. De plus, comme je détermine l'attribut de download sur info.txt le fichier sera téléchargé avec ce nom au lieu du nom aléatoire généré par createObjectURL .

    En JavaScript, vous pouvez utiliser la ligne suivante pour demander à l'utilisateur de sauvegarder un fichier texte,

    window.open("data:text/json;charset=utf-8," + escape("Ur String Object goes here"));

    J'ai testé ceci dans certains navigateurs populaires parfois … assurez-vous qu'il fonctionne dans Safari ou pas … Bonne chance

    Mais ma condition est de générer un fichier texte en utilisant javascript pour un navigateur safari

    Ce n'est pas possible avec vanilla Javascript en raison de restrictions de sécurité . Vous pouvez cependant utiliser le javascript côté serveur tel que Node.JS ou Ajax ou une autre technologie côté serveur .