JavaScript et les fichiers [Résolu]

Messages postés
291
Date d'inscription
dimanche 4 octobre 2009
Dernière intervention
25 août 2014
-
Bonjour,

Est-ce que
JavaScript
permet les opérations d'écriture et de lecture sur un fichier texte, par exemple ?

Merci pour toute éventuelle réponse
--
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
23610
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
14 décembre 2018
1
Merci
Bonjour,

Déjà... tout dépend de l'emplacement de ton fichier texte.
Si tu souhaites écrire/lire un fichier se trouvant sur le serveur la réponse est NON (javascript s'executant côté client).

Ensuite.. tout dépend également de ton navigateur.
La solution la plus répandue utilise un ActiveX (non compatible avec fireFox)
par exemple :
function WriteToFile()
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var s = fso.CreateTextFile("C:\\NewFile.txt", true);
var text=" blablabla....et bla ! ";
s.WriteLine(text);
s.Close();
}


Pour FireFox il semble que cela soit faisable d'une autre manière (non testée par mes soins...)
http://www.codeproject.com/Questions/556268/Writingplustoplustextplusfileplusnotplusworkingplu

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

begueradj
Messages postés
291
Date d'inscription
dimanche 4 octobre 2009
Dernière intervention
25 août 2014
-
Merci !!
Commenter la réponse de jordane45
Messages postés
1663
Date d'inscription
vendredi 9 mai 2008
Statut
Modérateur
Dernière intervention
3 novembre 2018
1
Merci
pour firefox chrome ie9 et > pour lire un fichier il faut utiliser filereader par contre il ne sera pas possible d'enregitrer le fichier sur le disque dur au mieux on peut enregistrer le fichier avec localstorage mais il sera accessible uniquement avec le navigateur

petite teste pour la lecture d'un fichier

 <!doctype html>
    <html lang="fr">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <head>
    <style type="text/css">
	
	body{
		font-family:Verdana, Geneva, sans-serif;
		background-color:#b2bdc6;
		}
	
	#fileinput{
	position:fixed;
	top:3%;
	}
	
	.box{
    background-color:gray;
    height:80%;
    width:20%;
	top:10%;
    position:fixed;
	float:left;
    border:1px ridge #aaa;
    -moz-box-shadow: 10px 10px 10px #212121;
    -webkit-box-shadow: 10px 10px 10px #212121;
    box-shadow: 10px 10px 10px #616161;
    text-align:center;
    }
	
    textarea{
    width:100%;
    height:150px;
    margin:auto;
	margin-bottom:15px;
	border:2px ridge #aaa;
	border-color:#585858;
    -moz-box-shadow: 10px 10px 10px #212121;
    -webkit-box-shadow: 10px 10px 10px #212121;
    box-shadow: 10px 10px 10px #616161;
    }
    #conteneur{
    width:70%;
	float:right;
	margin-right:40px;
    }
    div{
    margin:auto;
    }
    </style>
    <script type="text/javascript">
	
    var compteur=0
	
    function dragenter(e) {
    e.stopPropagation();
    e.preventDefault();
    }
    function drop(e) {
    
    if (!e) {
    var fichier = document.getElementById('fileinput').files;
    }
    else {
    var fichier = e.dataTransfer.files;
    }
    
    charger(fichier)
    }
	
	
    function charger(fichier){
   
    var dv=document.createElement('textarea')
    
	var charge=new FileReader();
	
    charge.readAsText(fichier[compteur]);
	
    charge.onloadend = function(e){
    dv.value = e.target.result;
	
    if (compteur<fichier.length-1) {
    compteur++;
    charger(fichier);
    }
    else{
    compteur=0;
    }
	document.getElementById('conteneur').appendChild(dv);
    }
	
    }
    </script>
    </head>
    <body>
    <div class='box'
    ondragenter="event.stopPropagation(); event.preventDefault();"
    ondragover="event.stopPropagation(); event.preventDefault();"
    ondrop="event.stopPropagation(); event.preventDefault(); drop(event);">
    boite a drop
    </div>
    <br>
    <div>
    <input type='file' multiple='multiple' id='fileinput' onchange='drop()'>
	</div>
    <br>
    <div id='conteneur'></div>
    </body>
    </html>

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

begueradj
Messages postés
291
Date d'inscription
dimanche 4 octobre 2009
Dernière intervention
25 août 2014
-
Merci pour les informations précieuses, Kamza
Commenter la réponse de @karamel
Messages postés
295
Date d'inscription
vendredi 26 avril 2013
Dernière intervention
15 juillet 2015
-1
Merci
Je croit que oui avec la méthode filltext()
va voir sa sur openclassroom.
begueradj
Messages postés
291
Date d'inscription
dimanche 4 octobre 2009
Dernière intervention
25 août 2014
-
Merci mais filltext() n'a rien à voir avec l'écriture dans un fichier.
Commenter la réponse de EnguerrandP

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.