Forum Liberty Basic France

Le 11/04/2011 à 23h02

Libertynaute Débutant

Groupe: Membre

Inscrit le: 11/04/2011
Messages: 9
Bonjour à tous
J'ai découvert le liberty basic et je "bricole" un peu avec. En tâtonnant un peu j'arrive à comprendre son fonctionnement. Sur l'application que je suis en train de faire, je bute sur une fonction assez simple. Je voudrais copier/coller le contenu d'un dossier vers un autre dossier. Je suis presque sur qu'il y a une solution mais je cale....
Merci d'avance à celui qui me dépannera.

Web    
Le 12/04/2011 à 19h23

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Salut et bienvenue !

C'est tout à fait possible !

Tu peux utiliser FILES pour obtenir les informations des dossiers/fichiers contenues dans un dossier
Code VB :
files "c:\", info$()

Ces infos sont stockés dans le tableau info$ ! Regarde la doc pour voir sa structure ;)

Ensuite, il te suffit de récupérer le nom de chaque fichier, de récupérer son contenu et de le copier dans un autre fichier !
http://libertybasic.fr/pages/partie-ii-2-les-fichiers

++

Mail MSN Web    
Le 13/04/2011 à 17h36

Libertynaute Débutant

Groupe: Membre

Inscrit le: 11/04/2011
Messages: 9
Salut
:( Je n'ai pas trouvée la solution à mon problème :(
Mon but est de copier le contenu d'un dossier-A dans un autre dossier-B. Les deux dossiers auront donc le même contenu. La fonction name serait bien sauf que les fichiers sont déplacés et pas dupliqués. Dommage que mon turbo-basic ne tourne que sous dos, la fonction copie fonctionnait bien.

Web    
Le 13/04/2011 à 18h15

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Si c'est sur la copie d'un fichier que tu bloques, voila le code :

Code VB :
sub copy filepath$, newFilepath$
 
    'Ouverture du fichier source
    open filepath$ for input as #source
        file$ = input$(#source, lof(#source))   'Récupère le contenu de l'ensemble du fichier
    close #source
 
    'Ouverture du fichier de destination
    open newFilepath$ for output as #dest
        print #dest, file$ 
    close #dest
 
end sub
 
 


Un exemple d'utilisation :
Code VB :
 
call copy "C:\mon_dossier_1\mon_fichier.txt", "C:\mon_dossier_2\mon_fichier.txt"
 


Tu remarqueras qu'avec cette fonction, tu peux aussi renommer ton fichier en même temps.
Par contre, si le fichier destination existe déjà, il sera remplacé !


EDIT : J'ai posté un code pour pouvoir copier un dossier et toute son arborescence à un autre emplacement : http://libertybasic.fr/forum/topic-42+jb-copier-l-arborescence-d-un-dossier.php

++
Black Templar

Mail MSN Web    
Le 13/04/2011 à 18h40

Libertynaute Débutant

Groupe: Membre

Inscrit le: 11/04/2011
Messages: 9
Merci pour ton aide. Si avec tout ça je n'y arrive pas... c'est grave :s :lu

Web    
Le 13/04/2011 à 22h30

Libertynaute Débutant

Groupe: Membre

Inscrit le: 11/04/2011
Messages: 9
Parfait, j'ai utilisé le code du lien. Tout fonctionne bien.
Encore merci !

Web    

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie