IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

liste de repertoire, ouverture de fichier dans sous répertoire [Débutant]


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut liste de repertoire, ouverture de fichier dans sous répertoire
    bonjour,
    je débute en matlab (et aussi en programmation), j'ai fouillé ce forum très riche, mais je n'ai pas encore de soultion à mon probléme.
    Dans un répertoire "Méthodes" j'ai un programme matlab : calcul.m (qui lui fonctionne)
    Dans des répertoires "Enregistrement_date1", il y n répertoires "piece_i", dans chaque répertoire "piece_i" il y a un sous-répoertoire "piece_i" contenant le fichier qui m'intéresse (en l'occurrence AI.xlt).
    le nom des pièces et donc des répertoires est en fait de la forme: 'AB123456'.
    Ces fichiers AI.xlt sont générés par une carte d'acquisition de données.
    Jusqu'à présent à la main : j'ouvrais un à un les fichiers AI.xlt sous ultraedit, changeais les virgule en point ( ',' en '.'), sauvegardais un à un les fichiers dans le répertoire "Enregistrement_date1", avant de pouvoir lancer le calcul.m depuis ce répertoire. en plus du temps pris, il y a des risque d'erreur chaque répertoire date pouvant contenir jusqu'à 30 pièces (voire plus)...
    Les résultats de calculs sont enregistrés dans un fichier .xls (un fichier par date).


    Pour info le programme calcul.m commence ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    % établir la liste des pièces à traiter dans le répertoire et récupérer les
    % données
    liste=ls('*.csv');
    Nombrepiece = numel(liste)/12; % nombre de pièces à traiter
    numlignedebfichier = 2;   % Numéro de ligne du fichier excel écriture des résultats
    Texte={'','','','','','','','','','','',''}; % ligne blanche pour séparer les résultats de chaque pièce
    nom1piece = [liste(1,1:8)]; % nom de la 1° pièce
    nomNpiece = [liste(Nombrepiece,1:8)]; % nom de la dernière pièce (utilisés pour contruire le nom du fichier résulats)
     
    range=['A1:A1'];
    xlswrite([nom1piece,'_',nomNpiece,'.xls'],Nombrepiece,'donnees',range);     
     
       for i=1:1:Nombrepiece
    filename=[liste(i,1:12)];% nom de fichier .csv courant
    A=importdata(filename); % importation des données
    Titre=A.colheaders; % lecture du titre des colonnes
    if strcmp(Titre(2),'AI 5'),break, end
    nompiece=[liste(i,1:8)] % nom de pièce courante
    Time=A.data(1:end,1); %temps
    AI3=A.data(1:end,2); % signal hauteur en volt
    AI4=A.data(1:end,3); % signal déplacement horizontal en volt
    mon problème est le suivant :
    - arriver à lister les répertoires, et uniquement les répertoires "AB123456" du répertoire "Enregistrement_date1" (qui peuvent contenir aussi des fichiers..)
    - ouvrir le fichier AI.xlt du sous répertoire "AB123456" du réportoire "parent" "AB123456"
    - lancer le calcul (étant entendu que le fichier sera modifié avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    fid = fopen('AI.xlt', 'rt');
    car = fread(fid);
    data = strrep(char(car'), ',', '.')
    fid=fopen('data.csv','w')
    fwrite(fid,data)
    fclose(‘all’)
    Importdata('data.csv')
    j'espère que l'exposé est assez clair.
    d'avance merci pour l'aide apportée
    snake-dam

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Attention la fonction ls a un comportement différent selon les plateformes :
    Citation Envoyé par doc ls
    Output Arguments

    list
    On UNIX® platforms, list is a character row vector of names separated by tab and space characters.
    On Microsoft® Windows® platforms, list is an m-by-n character array of names—m is the number of names and n is the number of characters in the longest name. MATLAB® pads names shorter than n characters with space characters.
    Je te conseille plutôt d'utiliser la fonction dir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    rep = 'chemin vers... Enregistrement_date1';
    liste = dir( fullfile(rep,'*.csv') );
    qui te permettra de facilement distinguer les dossiers des fichiers :
    Ainsi que retenir les dossiers ayant un certain pattern
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    pattern = '. . .';
    matches = ~cellfun(@isempty ,regexp({liste.name}, pattern, 'match'));
    Dernière modification par Invité ; 09/12/2014 à 19h10.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut merci pour l'aide, mais il y a toujours une erreur
    merci pour cette réponse,
    j'y vois un peu plus clair,
    mais j'ai toujours un message d'erreur sur ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    set(0,'RecursionLimit',1)
    liste =dir
    for i=3:1:nnumel(liste)
    if liste(i).dir == 1,    nomrep(i) = [liste(i).name],    nbrepiece = nbrepiece + 1;
    end
    end
    voici les messages :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ??? Maximum recursion limit of 1 reached. Use set(0,'RecursionLimit',N)
    to change the limit.  Be aware that exceeding your available stack space can
    crash MATLAB and/or your computer.
     
    Error in ==> mdbclearfunction
     
     
    ??? Maximum recursion limit of 1 reached. Use set(0,'RecursionLimit',N)
    to change the limit.  Be aware that exceeding your available stack space can
    crash MATLAB and/or your computer.
     
    Error in ==> direp

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    à quoi te sert la première ligne? cette fonction permet de fixer le nombre d'appel maximum dans une fonction récursive, je ne vois pas le rapport avec la suite de ton programme, je pense que tu peux supprimer cette ligne qui cause l'erreur que tu obtiens.
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut suite
    merci magelan, mais sans cette ligne le message erreur dit de l'ajouter finalement avec ou sans la ligne set... c'est pareil

  6. #6
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Peux-tu nous montrer le message d'erreur et le code associé?
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  7. #7
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut
    avec un % devant le ligne set...
    le message est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ??? Maximum recursion limit of 1 reached. Use set(0,'RecursionLimit',N)
    to change the limit.  Be aware that exceeding your available stack space can
    crash MATLAB and/or your computer.
     
    Error in ==> direp
    sans le % le message est le même (que le code soit lancé en ligne de commande ou avec le bouton vert dans l'éditeur de fichier .m)

  8. #8
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Bonjour

    Je ne suis pas sûr de moi, mais je dirai que cette ligne est incorrect:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if liste(i).dir == 1,    nomrep(i) = [liste(i).name],    nbrepiece = nbrepiece + 1;
    Quelle est la condition et quelles sont les instructions sur cette ligne?
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  9. #9
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par Gooby Voir le message
    Bonjour

    Je ne suis pas sûr de moi, mais je dirai que cette ligne est incorrect:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if liste(i).dir == 1,    nomrep(i) = [liste(i).name],    nbrepiece = nbrepiece + 1;
    Quelle est la condition et quelles sont les instructions sur cette ligne?
    tu as raison j'ai écrit un peu vite en fait il faut lire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if liste(i).isdir == 1,    nomrep(i) = [liste(i).name],    nbrepiece = nbrepiece + 1;

  10. #10
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Ok, c'est normal, du coup la variable RecursionLimit reste à 1, il faut soit que tu relances matlab, soit que tu fasses :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(0,'RecursionLimit',500)
    et tu exécutes ton code sans la première ligne
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut
    Citation Envoyé par magelan Voir le message
    Ok, c'est normal, du coup la variable RecursionLimit reste à 1, il faut soit que tu relances matlab, soit que tu fasses :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(0,'RecursionLimit',500)
    et tu exécutes ton code sans la première ligne
    merci magelan ça avance un peu mais coince un peu plus loin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    liste = 
     
    19x1 struct array with fields:
        name
        date
        bytes
        isdir
        datenum
     
    ??? Subscripted assignment dimension mismatch.
     
    Error in ==> direp at 4
    if liste(i).isdir == 1,    nomrep(i) = [liste(i).name],    nbrepiece = nbrepiece + 1;
    je vais essayer en remançant matlab

  12. #12
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    voir la : http://matlab.developpez.com/faq-err...nsion_mismatch

    Il y a une erreur ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nomrep(i) = [liste(i).name]
    nomrep(i) est une case d'un tableau, et liste(i).name est un tableau de plusieurs chaines de caractères. tu peux utiliser un tableau de cellules pour stocker les noms de tes répertoires.
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  13. #13
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut merci magelan
    bon j'ai vraiment galèré pour trouver la bonne syntaxe, mais finalement je pense être sur la bonne voie

    voici donc le bout de code qui fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    liste =dir
    clear  nomrep
    k=0
    for i=3:1:numel(liste)
    if liste(i).isdir == 1,  k=k+1,  nomrep{k} = liste(i,1).name   ;
    end
    end
    nbrepiece =k;
    les répertoires à ouvrir seront donc de la forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rep = fullfile(char(nomrep(1)),char(nomrep(1)))
    merci encore pour l'aide,ça devrait rouler maintenant, mais au cas où je sais où trouver de l'aide,
    A+ snake-dam

  14. #14
    Invité
    Invité(e)
    Par défaut
    Pense à indenter correctement ton code, et préfère mettre une seule instruction par ligne, cela le rendra beaucoup plus lisible. Ce qui donnerait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    liste =dir
    clear  nomrep
    k=0
    for i=3:1:numel(liste)
        if liste(i).isdir == 1
            k=k+1
            nomrep{k} = liste(i,1).name;
        end
    end
    nbrepiece =k;
    Tu peux simplifier ton code comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    liste = dir;
    nomrep = {liste( [liste.isdir] ).name};
    nbrepiece  = numel(nomrep);
    À noter que ta liste de dossiers contiendra les deux dossiers '.' (courant) et '..' (parent). Tu mentionnais des dossiers ayant pour nom piece_i, tu pourrais restreindre en utilisant judicieusement la fonction dir comme ceci :
    * pour dire "n'importe quoi après".

  15. #15
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut merci winjerome
    merci pour ces infos complémentaires
    en fait tu as raison d'affiner la fonction dir sur les répertoires à ouvrir afin d'éviter d'ouvrir des répertoires inutiles.
    comme ils sont de la forme 'AB123456'
    le code
    risque d'ouvrir tous les répertoires commençant par 'AB...

    aussi ta soluce avec la fonction pattern

    me plait bien mais je n'arrive pas à la mettre en œuvre, je n'ai pas encore trouvé de la doc sur cette commande.

    EDIT.
    Si j'arrive à utiliser la commande pattern, ta proposition de code fonctionnera super bien.
    Dans le cas contraire, je serai obliger d'utiliser une boucle en commençant l'itération à 3 afin de ne pas lancer de calcul pour les répertoire '.' et '..'

  16. #16
    Invité
    Invité(e)
    Par défaut
    Si je comprends bien ton pattern, c'est AB + 6 chiffres ?

  17. #17
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut merci encore winjerome
    tu as bien deviné, merci winjerome.
    en fait c'est un tout petit plus compliqué, je risque d'avoir des AB123456 voire des AC123456
    donc en fait il faudrait : AX123456 : un A, une lettre et 6 chiffres.
    ps où y a-t-il de la doc sur la commande pattern?

  18. #18
    Invité
    Invité(e)
    Par défaut
    Dans ce cas ce serait plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pattern = '^A[A-Za-z]\d{6}$';
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pattern = '^A[A-Z]\d{6}$';
    si seulement des majuscules.

    Ce n'est pas "pattern" qu'il faut regarder, ce n'est qu'une variable comme une autre, mais la fonction dans laquelle elle est utilisée : regexp (pour "expression régulière").
    Dernière modification par Invité ; 23/03/2019 à 14h14.

  19. #19
    Futur Membre du Club
    Homme Profil pro
    ingénieur méthodes forges
    Inscrit en
    Décembre 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : ingénieur méthodes forges
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut des soucis avec la construction du nom complet du fichier avec chemin
    bon le bout de code fonctionne pour extraire les répertoires dont j'ai besoin,
    mais j'ai un soucis pour construire un cell array(je crois) 'nomfichier' comme nomrep mais qui cette fois contient le chemin complet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nomfichier = [ pwd '\' char(nomrep(1)) '\' char(nomrep(1)) '\' 'AI.xlt']
    cette ligne fonctionne mais je voudrai avoir un 'nomfichier(i)' = [ pwd '\' char(nomrep(i)) '\' char(nomrep(i)) '\' 'AI.xlt']
    soit avec une boucle soit plus efficace

  20. #20
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 163
    Points
    53 163
    Par défaut
    Comme ceci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for i = ...
     
        nomfichier{i} = fullfile(pwd, nomrep{i}, nomrep{i}, 'AI.xlt');
     
    end
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 0
    Dernier message: 08/02/2013, 10h12
  2. créer fichier dans sous-répertoire
    Par senvedgi dans le forum Débuter
    Réponses: 11
    Dernier message: 15/11/2012, 16h52
  3. Requête ODBC et fichier dans sous-répertoire
    Par Eusebe dans le forum HyperFileSQL
    Réponses: 10
    Dernier message: 06/07/2012, 10h34
  4. fichier dans sous repertoire
    Par deous dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 14/05/2007, 14h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo