matwachich a écrit :; LA vraie solution qui ne casse pas la tête
Heuu oui, mais selon le code de Yassin, il manque des petites choses ...
En l'occurence, le
FileCopy devrait être utilisé avec le paramètre flag à 9 (8 + 1).
- flag = 1 pour écraser le fichier cible si il existe déjà
- flag = 8 pour créer la structure des répertoires si elle n'existe pas.
Ensuite il faut tester la valeur de retour pour savoir si l'opération c'est bien déroulée ou non.
Cela nous donne :
Code : Tout sélectionner
$file_source = "source.txt"
$file_cible = "cible.txt"
If Not FileCopy($file_source, $file_cible, 9) Then
MsgBox(16, "Attention", "Erreur lors de la copie du fichier.")
EndIf
Maintenant, en lisant ceci :
yasin27 a écrit :importé le contenue d'un fichier texte vers un autre
je penserais plutôt à un code qui récupère le texte d'un fichier et qui
l'ajoute à un autre fichier.

► Afficher le texte
Code : Tout sélectionner
Local $File1 = "source.txt"
Local $File2 = "cible.txt"
; Teste la présence des deux fichiers. Si problème => Erreur
If Not FileExists($File1) Or Not FileExists($File2) Then
MsgBox(16, "Erreur", "Fichier oxo.txt manquant.")
Exit
EndIf
; Lit le contenu du fichier source
Local $sFile1 = FileRead($File1)
; Ouvre le fichier de destination en écriture (ajout du texte à la fin du fichier)
Local $hFile2 = FileOpen($File2, 1)
; Teste si l'ouverture c'est bien déroulée. Si problème => Erreur
If $hFile2 = -1 Then
MsgBox(16, "Erreur", "Impossible d'ouvrir le fichier de destination.")
Exit
EndIf
; Ecrit le texte dans le fichier de destination. Si problème => Erreur
If Not FileWrite($hFile2, $sFile1) Then
MsgBox(16, "Erreur", "Erreur d'écriture dans le fichier de destination.")
Exit
EndIf
; Ferme le fichier de destination
FileClose($sFile2)
; Teste la taille du fichier de destination. Si problème => Erreur
If Not FileGetSize($File2) > 0 Then
MsgBox(16, "Attention", "Fichier cible vide.")
EndIf