Acces fichiers texte

[Résolu]
Signaler
Messages postés
29
Date d'inscription
dimanche 11 avril 2004
Statut
Membre
Dernière intervention
18 décembre 2012
-
Messages postés
29
Date d'inscription
dimanche 11 avril 2004
Statut
Membre
Dernière intervention
18 décembre 2012
-
FreeCommander - Contenu du dossier :  F:\tablature\V\divers V 22/07/2007 18:54



Date      Heure   Attrib       Octets          Nom de Fichier
---------- -------- ------   ----------------  --------



F:\tablature\V\divers V
15/03/2002 15:55:54 A-----              5 342  V, Paul - Battlefields Afar.gp3
29/05/2003 17:20:32 A-----              9 298  V, Paul - Rain.gp3
30/05/2003 18:08:04 A-----             22 325  V8 - Destrucción.gp3
30/05/2003 07:29:06 A-----             12 668  vachon, philip - philblues.gp3



Voila comment se présente le début d'un fichier texte duquel je souhaite copier certaines parties.

J'ai besoin de copier les parties suivantes:
V,Paul
V8
vachon, philip

Cela sans intervention exterieure biensur.
Mon problème est que ces parties ne sont pas forcément à un emplacement fixe du fichier et je souhaite copier un extrait du même genre de chaque ligne de mon fichier.

Quelqu'un à réussit à me comprendre et sais comment je pourais faire ça ?

Merci d'avance
Guesn
[mailto:guesn@gmail.com guesn@gmail.com]

7 réponses

Messages postés
29
Date d'inscription
dimanche 11 avril 2004
Statut
Membre
Dernière intervention
18 décembre 2012

Je me perd tout seul dans ce projet.

Je suis partit sur une idée que mon frère m'a soumis
Private
 Sub 
Command1_Click
()
 Dim 
fso
As
FileSystemObject, dossier
 As 
Folder, sousdossier
As
Folder, fichier
 As 
File

   
Set
fso
=
 New 
FileSystemObject
   
Set
dossier
=
fso
.
GetFolder
(
"
c:\divers V
"
)
    scan dossier

 End 
Sub

 Public 
Sub
scan
(
 ByVal 
dossier
As
Folder)
   
 For 
Each
fichier
 In 
dossier
.
Files

        Debug
.
Print
fichier
   
 Next 


End
Sub


et avant de printer dans débug faire le tri du contenu inutile par les fonction right$ et left$

Guesn
[mailto:guesneau@gmail.com guesneau@gmail.com]
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
80
Salut
Il te suffit de lire chaque ligne du fichier (Open, Do While, Line Input, Loop, Close = des exemples plein le site) et de faire le traitement suivant :
- Remplacer les doubles espaces par un seul :
Do While Instr(1, maLigne, "  ") > 0
   maLigne = Replace(maLigne, "  ", " ")
Loop
- Ensuite, utiliser les espaces comme délimiteurs de tableau :
Dim monTableau() As String
monTableau = Split(maLigne, " ")
Et tu auras (pour la dernière ligne) :
   "30/05/2003"   dans monTableau(0)
   "07:29:06"      dans monTableau(1)
   "A-----"         ...
   "12"
   "668"
   "vachon,"
   "philip"
   "-"                     ...
   "philblues.gp3"   dans monTableau(8)
où le 8 = UBound(monTableau)

Bien sûr, il faudra l'aménager car tes lignes ne répondront surement pas toutes à ce découpage, mais c'est l'idée qu'il faut garder.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Messages postés
29
Date d'inscription
dimanche 11 avril 2004
Statut
Membre
Dernière intervention
18 décembre 2012

En fait mon problème complet est la création de dossier sur la base de mon fichier txt.

J'ai fais des recherches sur la créations de dossiers et en dehors du code MKDir je n'ai trouver aucune solution plus poussée.

Ais-je mal cherché ou bien n'y a t'il pas grand chose à trouver.

Guesn
[mailto:guesneau@gmail.com guesneau@gmail.com]
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonsoir,


"En fait mon problème complet est la création de dossier sur la base de mon fichier txt."



Je ne comprends là plus le lien entre çà et ta question originelle !
Peux-tu tr'expliquer avec précision ?

Pour la création d'un dossier, par ailleurs, MKDir me parait parfait !
Messages postés
29
Date d'inscription
dimanche 11 avril 2004
Statut
Membre
Dernière intervention
18 décembre 2012

Mon fichier txt est un listing d'un répertoire contenant une centaine de tablature au format guitar pro.
Mon but est de créer des dossier en fonction de l'artiste de la tablature.

Donc ma question de base était pour isoler les artistes 
À  partir de ça j'aurais fais un MKDir artist et passage à la ligne suivante.

Ensuite je me serais pencher sur le déplacement des fichiers.

J'ai éclaircis le flou ?

Guesn
guesneau@gmail.com
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Ben...
je crois que, dans ce cas, Jack t'a parfaitement répondu, non ?
Une fois ton "artiste" isolé et identifié par le split, libre à toi de créer ou non pour lui le dossier que tu veux...


Ma foi...


Quel est ton problème, dans cette affaire très simple ?
Je crains que tu n'aies d'abord à bien comprendre ce qu'est la lecture séquentielle d'un fichier texte, qu'il contienne ou non des données dont tu veux utiliser certaines pour créer ou non un dossier !
Messages postés
29
Date d'inscription
dimanche 11 avril 2004
Statut
Membre
Dernière intervention
18 décembre 2012

ne cherchez plus j'ai réussit grace à ce que j'ai cité juste avant.
Je posterais le source quand j'aurais fini
là je vais me pencher sur le déplacement des fichiers.

Guesn
[mailto:guesneau@gmail.com guesneau@gmail.com]