Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/02/2008, 17h54   #1
Candidat au titre de Membre du Club
 
Inscription : janvier 2007
Messages : 28
Détails du profil
Informations personnelles :
Localisation : Canada

Informations forums :
Inscription : janvier 2007
Messages : 28
Points : 11
Points : 11
Par défaut [ASP]Ouverture de fichier qui ne fonctionne pas

Bonjour,

Je suis exaspérée, alors je me décide enfin à vous demander de m'éclairer, SVP.

Dans le but d'effectuer une recherche par mots-clés, j'essaie d'ouvrir chaque fichier d'un dossier pour en vérifier le contenu. Pour le nom des fichiers en question, je dois me baser sur ma base de données SQL, donc un recordset rsFiches est créé.

Pourquoi, lorsque je fais :
Code :
1
2
3
4
5
6
7
8
9
10
11
 
strDossierRech = "/pspecdev/documents/docHTML/"
Set objFS = Server.CreateObject("Scripting.FileSystemObject")
Set objFld = objFS.GetFolder(Server.MapPath(strDossierRech))
strServerPath = objFld.Path & "\"
 
Do while not rsFiches.eof
 
   response.write strServerPath & rsFiches("LienFiche")
 
Loop
J'obtiens tous les noms de fichiers (+path) qui se trouvent dans mon recordset. Les noms sont corrects et situés au bon endroit. Mais si je fais :
Code :
1
2
3
Set objFile = objFS.GetFile(strServerPath & rsFiches("LienFiche")
Set objTS = objFile.OpenAsTextStream
etc...
... j'obtiens l'erreur d'exécution 0x800A0035 qui, après vérification, signifie quelque chose comme File not found.

J'en perds mon latin !!! Quelqu'un peut m'expliquer, SVP ?
NLozo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2008, 20h45   #2
Candidat au titre de Membre du Club
 
Inscription : janvier 2007
Messages : 28
Détails du profil
Informations personnelles :
Localisation : Canada

Informations forums :
Inscription : janvier 2007
Messages : 28
Points : 11
Points : 11
Par défaut Méthode GetFile n'aimerait pas les accents dans le nom ?

Bonjour,

Je continue à fouiller.... je crois que GetFile ne fonctionne pas parce que certains noms de fichier comportent des accents et des espaces, est-ce possible ? Est-ce que quelqu'un pourrait me confirmer ça ? Est-ce possible de contourner le problème, ou dois-je renommer tous les fichiers problématiques (un long travail en perspective, parce qu'en plus des noms de fichier, il faut corriger la base de données, ça commence à m'inquiéter...)

Merci encore...
NLozo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2008, 20h51   #3
Membre éclairé
 
Inscription : août 2007
Messages : 360
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 360
Points : 334
Points : 334
Bonsoir,

Code :
1
2
Set objFile = objFS.GetFile(strServerPath & rsFiches("LienFiche"))
J'espère que ce n'est pas ça...

Sinon que te renvoies ton Response.Write ?
mathieu44800 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2008, 21h01   #4
Candidat au titre de Membre du Club
 
Inscription : janvier 2007
Messages : 28
Détails du profil
Informations personnelles :
Localisation : Canada

Informations forums :
Inscription : janvier 2007
Messages : 28
Points : 11
Points : 11
Par défaut Résultat du response.write

Merci de me répondre !

Mon response.write me retourne la liste de tout mes fichiers, avec les espaces et les accents. Bien sûr pour le voir, je dois mettre en commentaire ma ligne comportant le GetFile.

Ce qui m'amène à soupçonner les accents et les espaces, c'est que j'ai changé le « rsFiche("LienFiche") » pour un nom de fichier « adapteur.html », et le GetFile a fonctionné. J'ai ensuite changé pour « Cabaret à cathétérisme.html » et ça ne fonctionne plus. Je sais que les deux fichiers sont bel et bien dans le répertoire donné.

Ça m'fait peur et mes dents grincent à penser que je vais devoir changer tout mes noms de fichiers et ma base de données....... et là je n'ai pas fait le tour pour voir tous les impacts !
NLozo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2008, 21h16   #5
Membre éclairé
 
Inscription : août 2007
Messages : 360
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 360
Points : 334
Points : 334
Re,

Essayes un :

Code :
1
2
3
4
5
6
 
If (objFS.FileExists("Ton_Chemin")) Then
     objFS.GetFile()...
Else
     Response.Write "Fichier non trouvé !"
End If
mathieu44800 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2008, 21h20   #6
Candidat au titre de Membre du Club
 
Inscription : janvier 2007
Messages : 28
Détails du profil
Informations personnelles :
Localisation : Canada

Informations forums :
Inscription : janvier 2007
Messages : 28
Points : 11
Points : 11
Par défaut Super !!!

Ça fonctionne !!! et en plus, la liste comporte tout de même les noms avec espace et accents !

Quel capricieux cet ASP !!!


Un gros merci !!!
NLozo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h17.


 
 
 
 
Partenaires

Hébergement Web