Javascript File Reader
Répondre à la discussion
Affichage des résultats 1 à 16 sur 16

Javascript File Reader



  1. #1
    Great.J

    Javascript File Reader


    ------

    Bonjour,

    J'ai un petit soucis avec FileReader. N'étant pas un pro en javascript, je me casse la tête avec un problème depuis quelques soirées.
    Je voudrais rentrer comme valeur d'une variable, le contenu d'un fichier .txt ou .csv.
    J'ai le code suivant mais lorsqu'il y a plus d'une seule ligne dans le fichier, cela ne fonctionne plus.
    Code:
    <label for="file">Choisissez un fichier texte</label>
    <input type="file" id="file" accept=".txt"/>
    var texte = "";
    window.onload = function() {
    var f = document.getElementById('file' ),
    res = document.getElementById('resul tat');
    f.onchange = function() {
    var file = f.files[0],
    fr = new FileReader();

    fr.onprogress = function() {
    res.innerHTML = 'Chargement...';
    };
    fr.onerror = function() {
    res.innerHTML = 'Oups, une erreur s\'est produite...';
    };
    fr.onload = function() {
    res.innerHTML = '';
    res.appendChild(document.creat eTextNode(fr.result));
    texte = fr.result;
    };
    fr.readAsText(file);
    console.log(document.getElemen tById('file').value)
    console.log(texte);

    };
    };
    Aussi, est-il possible de s'abstenir de l'étape où il faut cliquer sur l'input et aller chercher manuellement le fichier ? Je veux dire par là, est-il possible qu'il charge ce fichier automatiquement au démarrage de la page ?

    Merci pour votre aide !!

    -----
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  2. #2
    umfred

    Re : Javascript File Reader

    Il y a des espaces en surplus qui se sont glissés dans ton code (problème de copier-coller je pense)
    Tu dois aussi avoir dans ton html, un élément dont l'id est résultat.
    Une fois ces corrections faites, ça marche chez moi.

  3. #3
    Great.J

    Re : Javascript File Reader

    Désolé pour le temps de réponse, je suis très pris en ce moment !

    C'est cool, ça fonctionne !! je suis un deg que cela ne fonctionnait pas pour ces raisons là !

    Cela-dit, j'aimerai que ce fichier ce charge automatiquement à l'ouverture de la page. Si j'ai bien compris, File Reader empêche un chargement automatique et celui-ci doit impérativement se faire via l'utilisateur.
    Connaissez-vous d'autres moyens de lire un fichier txt sans aller le sélectionner personnellement, et sans rien installer(ex Nodes) ?

    Merci à vous !
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  4. #4
    pm42

    Re : Javascript File Reader

    Citation Envoyé par Great.J Voir le message
    Cela-dit, j'aimerai que ce fichier ce charge automatiquement à l'ouverture de la page. Si j'ai bien compris, File Reader empêche un chargement automatique et celui-ci doit impérativement se faire via l'utilisateur.
    Oui pour des raisons de sécurité.

    Citation Envoyé par Great.J Voir le message
    Connaissez-vous d'autres moyens de lire un fichier txt sans aller le sélectionner personnellement, et sans rien installer(ex Nodes) ?
    Pour lire un fichier, il n'y a pas vraiment de solution simple et portable mais le sujet a été traité en détail ici : https://stackoverflow.com/questions/.../372333#372333

    Pour garder de l'information en local, il y soit un cookie soit en moins limité l'API localStorage : https://developer.mozilla.org/fr/doc...e/LocalStorage

  5. A voir en vidéo sur Futura
  6. #5
    Great.J

    Re : Javascript File Reader

    Merci de ta réponse,

    Je suis débutant en programmation, mais ça m'a l'air mal parti c'est çà ? (1er lien)
    Quant aux cookies, tu suggère de faire l'opération manuellement une fois, de mettre sous variable javascript les informations contenues dans le fichier .txt ou .csv que tu a uploadé et de mettre ça comme cookcie pour que les jours suivant tu n'ai pas à refaire la manip (à condition que les informations dans le fichier .txt n'aient pas changé entre-temps) ?
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  7. #6
    Great.J

    Re : Javascript File Reader

    Je dis ça, c'est peut être con mais ça se tente ...
    Plutôt que de passer par cette solution, la suivante n'est-elle pas envisageable ?

    Contexte :
    Je veux faire une page web local que mes collègues pourront consulter sur laquelle ils iront chercher des informations.
    Ces informations sont à la base stockées sur un fichier Excel. Ne pouvant pas configurer de serveur (rester en local donc) je n'ai pas trouvé d'autre alternatives que de stocker les infos dans un fichier .csv (diurectement enregistré via le fichier Excel) et de le lire via le navigateur.
    Mais à la place d'enregistrer les informations sous format .txt ou .csv, je puis-je pas les enregistrer sous format .js en les mettant en forme dans le classeur Excel pour que cela soit lu par le navigateur comme du js ?
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  8. #7
    pm42

    Re : Javascript File Reader

    Citation Envoyé par Great.J Voir le message
    Je suis débutant en programmation, mais ça m'a l'air mal parti c'est çà ? (1er lien)
    Pour faire ce que tu veux ? Oui, c'est quasi impossible disons.

    Citation Envoyé par Great.J Voir le message
    Quant aux cookies, tu suggère de faire l'opération manuellement une fois, de mettre sous variable javascript les informations contenues dans le fichier .txt ou .csv que tu a uploadé et de mettre ça comme cookcie pour que les jours suivant tu n'ai pas à refaire la manip (à condition que les informations dans le fichier .txt n'aient pas changé entre-temps) ?
    Je ne te conseille pas les cookies sauf si ton besoin est de stocker très peu d'informations avec une durée de vie limitée dans le temps et en sachant que certains navigateurs vont les désactiver.

    L'API de localStorage correspond à mon avis bien à ton besoin.

  9. #8
    Great.J

    Re : Javascript File Reader

    et le fait de remplacer le fichier base de données .txt ou .csv en .js (organisé comme tel bien sur) ?
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  10. #9
    pm42

    Re : Javascript File Reader

    Citation Envoyé par Great.J Voir le message
    et le fait de remplacer le fichier base de données .txt ou .csv en .js (organisé comme tel bien sur) ?
    Tu peux chercher aussi longtemps que tu veux une solution à quelque chose d'impossible, tu ne vas pas trouver.

  11. #10
    Great.J

    Re : Javascript File Reader

    Je l'ai testé et cela fonctionne ...
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  12. #11
    Great.J

    Re : Javascript File Reader

    Je ne comprends pas comment cela ne peux pas fonctionner ...

    Il s'agit juste d'un fichier js qui est importé par le fichier html et qui contient les informations du fichier Excel, qui, dans un onglet 'output" les a organisé comme une information js " var1 = ['element1', 'element2' ...]" et ainsi de-suite ...
    Lorsque l'utilisateur à rentré une information dans le document Excel, il l'enregistre, puis enregistre l'onglet Output en .js et lance le site en local ...

    Chez moi cela fonctionne visiblement :/
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  13. #12
    pm42

    Re : Javascript File Reader

    Citation Envoyé par Great.J Voir le message
    et lance le site en local ...
    Toute l'astuce est là. Mais si on reste en local, on ne s'embête pas à faire des sites Web, il y a des tonnes de technologies plus adaptées.

  14. #13
    Great.J

    Re : Javascript File Reader

    Tu aurai des exemples ?

    L'idée est de gérer une base de donnée sans que les utilisateurs, qui entre parenthèses ne sont pas du tout familiarisés avec l'informatique (en général), ne puissent saboter involontairement cette base de donnée.
    Jusqu'à présent, la base de donnée des autres équipes de travail était sous format excel mais était sujette à des dérives d'écriture, de réplicats d'informations et chercher une information là-dedans était un calvaire.

    En passant par un page web comme outil d'entrée ou de recherche de donnée(s), je pensais être capable de limiter ces dérives et de faciliter l'accès aux données.
    J'ai quelques notions en programmation web dynamique (php et mysql) bien que je n'ai pas eu l'opportunité d'en coder; et je souhaitais me rapprocher de ce système efficace sans avoir à programmer un site serveur (dont je n'ai pas accès d'ailleurs).

    Si tu as d'autres suggestions pour faire ce que je souhaite faire sans avoir à programmer un outil web local ni installer un logiciel (pas de droit d'admin), je serai ravi de les entendre pour ne pas avoir à coder tout ceci.

    Dans tous les cas, je te remercie pour tes réponses qui m'ont beaucoup aidé et éclairé sur mon projet.
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

  15. #14
    pm42

    Re : Javascript File Reader

    Citation Envoyé par Great.J Voir le message
    L'idée est de gérer une base de donnée sans que les utilisateurs, qui entre parenthèses ne sont pas du tout familiarisés avec l'informatique (en général), ne puissent saboter involontairement cette base de donnée.
    Jusqu'à présent, la base de donnée des autres équipes de travail était sous format excel mais était sujette à des dérives d'écriture, de réplicats d'informations et chercher une information là-dedans était un calvaire.
    Compte tenu de cela, je ne vois pas pourquoi tu veux lire un fichier Excel en local. C'est contradictoire avec ton besoin.


    Citation Envoyé par Great.J Voir le message
    J'ai quelques notions en programmation web dynamique (php et mysql) bien que je n'ai pas eu l'opportunité d'en coder; et je souhaitais me rapprocher de ce système efficace sans avoir à programmer un site serveur (dont je n'ai pas accès d'ailleurs).
    Tu n'as pas le choix : il te faut un serveur sur une machine avec une base de données derrière.
    Tu peux écrire ça en PHP. Tu peux utiliser un fichier remplacer ton Excel mais il faut que tu gères les écritures "en même temps" en le lockant ce qui n'est pas évident.
    Ca marche tant qu'il n'y a pas trop d'utilisateurs et que tu fais des choses très simples.
    Sinon, MySql ou plus simple MongoDb mais là aussi, il faut apprendre.

    Le plus simple est de prendre un tutorial PHP/Mysql que n'importe quel moteur de recherche va te trouver par dizaines, de le suivre pour le faire fonctionner dans ton environnement avant de l'adapter à ton besoin.

  16. #15
    vande545

    Re : Javascript File Reader

    Bonsoir

    As-tu pensé au format de fichier XML ?
    Il y a un exemple ici :
    http://users.skynet.be/am034973/2184/xml/importxml.html

  17. #16
    Great.J

    Re : Javascript File Reader

    Bonjour,

    Désolé de cette réponse tardive mais non, je n'avais pas songé aux documents XML ... je vais regarder ça, merci à toi !
    "ici se trouve le chemin, c’est ici que commence notre Grand Voyage."

Discussions similaires

  1. Javascript : Intégrer une variable javascript dans un champ de formulaire html
    Par squal31 dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 03/08/2014, 11h15
  2. mind reader
    Par gcortex dans le forum Mathématiques du collège et du lycée
    Réponses: 4
    Dernier message: 24/03/2008, 10h06
  3. Reader ou Acrobat?
    Par abracadabra75 dans le forum Logiciel - Software - Open Source
    Réponses: 12
    Dernier message: 09/03/2006, 09h12