Lire des fichiers dans un script

Le
fdelente
Bonsoir.

J'ai besoin de lire des fichiers textes en javascript. Je sais que ce n'est
pas possible, donc j'ai trouvé sur le réseau une méthode détournée :
j'utilise la classe ReadURL.class dans une applet java.

Ça marche presque. J'ai à charger plusieurs fichiers les uns à la suite des
autres. Le premier est parfaitement chargé, mais pas les suivants.

Déjà j'ai un peu modifié ReadURL pour qu'une variable m'indique que le
fichier que je souhaite charger n'existe pas.

Ensuite le contenu du deuxième fichier se retrouve dans le premier, le
troisième dans le deuxième je subodore des problèmes de timing, puisque
ReadURL fait son chargement dans un thread.

Des idées ? Surtout pas d'ajax ou d'ActiveX, je voudrais une solution
javascript+java uniquement.

Merci.

À bientôt.

--
Fabrice DELENTE

SVP, ne m'envoyez pas de pièces jointes aux formats Word, PowerPoint, RTF
(formats propriétaires). Utilisez des formats libres comme txt, html,
OpenOffice.Org ou PDF. Merci. Voir
http://www.gnu.org/philosophy/no-word-attachments.fr.html
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
diablo
Le #779092
Bonsoir.

J'ai besoin de lire des fichiers textes en javascript. Je sais que ce n'est
pas possible, donc j'ai trouvé sur le réseau une méthode détournée :
j'utilise la classe ReadURL.class dans une applet java.

Ça marche presque. J'ai à charger plusieurs fichiers les uns à la suite des
autres. Le premier est parfaitement chargé, mais pas les suivants.

Déjà j'ai un peu modifié ReadURL pour qu'une variable m'indique que le
fichier que je souhaite charger n'existe pas.

Ensuite le contenu du deuxième fichier se retrouve dans le premier, le
troisième dans le deuxième... je subodore des problèmes de timing, puisque
ReadURL fait son chargement dans un thread.

Des idées ? Surtout pas d'ajax ou d'ActiveX, je voudrais une solution
javascript+java uniquement.


Pourquoi ? avec de l'ajax, c'est fait en 3sec, et c'est plus propre que
du java ...

Merci.

À bientôt.




--
-uTb#`diablo PWed by GNU/Linux Debian on Diablo

fdelente
Le #779091
diablo
Pourquoi ? avec de l'ajax, c'est fait en 3sec, et c'est plus propre que
du java ...


Parce que je n'ai pas les droits pour installer quoi que ce soit sur le
serveur...???

À bientôt.

--
Fabrice DELENTE

SVP, ne m'envoyez pas de pièces jointes aux formats Word, PowerPoint, RTF
(formats propriétaires). Utilisez des formats libres comme txt, html,
OpenOffice.Org ou PDF. Merci. Voir
http://www.gnu.org/philosophy/no-word-attachments.fr.html

diablo
Le #778856
diablo
Pourquoi ? avec de l'ajax, c'est fait en 3sec, et c'est plus propre que
du java ...


Parce que je n'ai pas les droits pour installer quoi que ce soit sur le
serveur...???

À bientôt.



ajax ne nécessite aucune installation ... c'est du JS couplé avec du
php, vala tout :)

http://fr.wikipedia.org/wiki/XMLHttpRequest

--
-uTb#`diablo PWed by GNU/Linux Debian on Diablo


fdelente
Le #778855
diablo
ajax ne nécessite aucune installation ... c'est du JS couplé avec du
php, vala tout :)

http://fr.wikipedia.org/wiki/XMLHttpRequest


Je ne peux pas utiliser de scripts PHP sur la machine, il n'est pas
installé...

À bientôt.

--
Fabrice DELENTE

SVP, ne m'envoyez pas de pièces jointes aux formats Word, PowerPoint, RTF
(formats propriétaires). Utilisez des formats libres comme txt, html,
OpenOffice.Org ou PDF. Merci. Voir
http://www.gnu.org/philosophy/no-word-attachments.fr.html

diablo
Le #778854
diablo
ajax ne nécessite aucune installation ... c'est du JS couplé avec du
php, vala tout :)

http://fr.wikipedia.org/wiki/XMLHttpRequest


Je ne peux pas utiliser de scripts PHP sur la machine, il n'est pas
installé...

À bientôt.



ha, sur le coup ,c'est plus embêtant.
hum, tite questions :
- ou se trouve le fichier à lire ?
- peut on y acceder depuis un navigateur par exemple ?
- c'est quoi ton hebergeur ?

--
-uTb#`diablo PWed by GNU/Linux Debian on Diablo


SAM
Le #778853
diablo

http://fr.wikipedia.org/wiki/XMLHttpRequest


Je ne peux pas utiliser de scripts PHP sur la machine, il n'est pas
installé...


Si tu n'as pas à charger des fichiers d'un autre domaine, le
XMLHTTPRequest est tout indiqué, me semble-ce.

Mais si ce sont des fichiers venus d'ailleurs, sans PHP associé il ne
doit pas il y avoir de salut.

Pour le Java, je connais pas et ... je ne sais pas ce que fait le tien :
afficher dans une balise DIV ? par appendChild ? ou bien ?

Qu'entends-tu par "thread" ? Quoi t'est-ce ? Ha! c'est aussi du Java.

Bon ... il paraitrait qu'il est possible de synchroniser des threads
wait() ou join()

--
sm


fdelente
Le #778852
diablo
ha, sur le coup ,c'est plus embêtant.


Oui :^)

hum, tite questions :
- ou se trouve le fichier à lire ?


Dans le même répertoire que mon script javascript.

- peut on y acceder depuis un navigateur par exemple ?


Oui, c'est du texte tout bête (CSV plus précisément). En fait je veux juste
récupérer les contenus des fichiers pour pouvoir les parser << à la main >>
(indexOf et substr...)

- c'est quoi ton hebergeur ?


C'est le collège où je travaille :^) et les règles de sécurité sont
draconiennes, et l'administrateur n'a pas forcément envie de s'embêter avec
tout ça (je précise que ce n'est pas moi l'administrateur :^)

À bientôt.

--
Fabrice DELENTE

SVP, ne m'envoyez pas de pièces jointes aux formats Word, PowerPoint, RTF
(formats propriétaires). Utilisez des formats libres comme txt, html,
OpenOffice.Org ou PDF. Merci. Voir
http://www.gnu.org/philosophy/no-word-attachments.fr.html

fdelente
Le #778851
SAM
Si tu n'as pas à charger des fichiers d'un autre domaine, le
XMLHTTPRequest est tout indiqué, me semble-ce.


Oui, les fichiers sont même dans le même répertoire que mon script.

Pour le Java, je connais pas et ... je ne sais pas ce que fait le tien :
afficher dans une balise DIV ? par appendChild ? ou bien ?


Oui, dans une balise DIV.

Qu'entends-tu par "thread" ? Quoi t'est-ce ? Ha! c'est aussi du Java.


C'est ça :^) et les problèmes de synchro de threads... :^(

Bon ... il paraitrait qu'il est possible de synchroniser des threads
wait() ou join()


Je vais regarder ça mais si je pouvais éviter... j'ai juste à lire les
contenus de 4 fichiers texte en local dans mon script, rien de plus...

À bientôt.

--
Fabrice DELENTE

SVP, ne m'envoyez pas de pièces jointes aux formats Word, PowerPoint, RTF
(formats propriétaires). Utilisez des formats libres comme txt, html,
OpenOffice.Org ou PDF. Merci. Voir
http://www.gnu.org/philosophy/no-word-attachments.fr.html

diablo
Le #778850
diablo
ha, sur le coup ,c'est plus embêtant.


Oui :^)

hum, tite questions :
- ou se trouve le fichier à lire ?


Dans le même répertoire que mon script javascript.

- peut on y acceder depuis un navigateur par exemple ?


Oui, c'est du texte tout bête (CSV plus précisément). En fait je veux juste
récupérer les contenus des fichiers pour pouvoir les parser << à la main >>
(indexOf et substr...)


ben, ca doit être faisable en JS only nan ?

une requete XMLHttpRequest sur ton(/tes) fichier(/s) CSV, et pis ca roule :)

perso, je que je fais :

<!--
function file(fichier) {
if (window.XMLHttpRequest) {
xhr_object = new XMLHttpRequest();
if (xhr_object.overrideMimeType) // Évite un bug du navigateur Safari :
xhr_object.overrideMimeType("text/html");
}
else {
if (window.ActiveXObject) {
try { // essaie de charger l'objet pour IE
xhr_object = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try { // essaie de charger l'objet pour une autre version IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
alert("Votre navigateur ne vous permez pas de naviguer sur ce
sitenessayez avec une browser plus evolué. Ex : Mozilla Firefox");
} // try-catch
} // try-catch
}
else
return(false);
} // if-else

xhr_object.open("GET", fichier, false);
xhr_object.send(null);

if(xhr_object.readyState == 4)
return(xhr_object.responseText);
else
return(false);
}
-->

pis un
var fichier1 = file('myCSVFile');
devrait suffire, en toute logique, et sans parler des problèmes
d'encodages :s


- c'est quoi ton hebergeur ?


C'est le collège où je travaille :^) et les règles de sécurité sont
draconiennes, et l'administrateur n'a pas forcément envie de s'embêter avec
tout ça (je précise que ce n'est pas moi l'administrateur :^)

À bientôt.

bonne nuit :)



--
-uTb#`diablo PWed by GNU/Linux Debian on Diablo


fdelente
Le #778849
In article
perso, je que je fais :


pis un
var fichier1 = file('myCSVFile');
devrait suffire, en toute logique, et sans parler des problèmes
d'encodages :s


Ok, merci, je vais tester ça aujourd'hui ! Pour l'encodage, pas de problème,
c'est moi qui créé les fichiers, je sais ce qu'il y a dedans :^)

À bientôt.

--
Fabrice DELENTE

SVP, ne m'envoyez pas de pièces jointes aux formats Word, PowerPoint, RTF
(formats propriétaires). Utilisez des formats libres comme txt, html,
OpenOffice.Org ou PDF. Merci. Voir
http://www.gnu.org/philosophy/no-word-attachments.fr.html

Publicité
Poster une réponse
Anonyme