log2002
Messages postés29Date d'inscriptionmardi 1 avril 2003StatutMembreDernière intervention30 décembre 2004
-
8 avril 2004 à 16:02
cs_pluplu
Messages postés615Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention 4 juillet 2012
-
8 avril 2004 à 21:08
Bonjour à tous et à toutes,
Mon problème est le suivant :
j'essaie de copier tous les fichier *.htm ou *.rtf d'un répertoire dans un fichier rtf ! MAis ça ne marche po !
je pense que ces du au balise et aux virgules ??
Vous pouvez copier mon code sur une forme et voir:
' Procédure à appeler pour lancer le traitement en lui passant le dossier de recherche en paramètre
Private Sub SearchFile(ByVal StartPath As String)
Dim Search As String
Dim Filename As String
Open "c:\fichier.rtf" For Append As #1
'2: ouvrir ton fichier source, copier toutes ces lignes dans ton fichiers final.
' Assure toi qu'il y est bien une barre oblique "" à la fin de StartPath
Search = Dir$(StartPath & "\*.rtf")
If Search <> "" Then
Do
If (Search <> "." And Search <> "..") Then
' Chemin d'accès complet du fichier trouver
Filename = StartPath & "" & Search
' S'assurez que c'est bien un fichier(pas obligatoire)
If (GetAttr(Filename) And vbDirectory) <> vbDirectory Then
' Crée toi une procédure ou fonction pour traiter le fichier trouver en lui passant le fichier trouver en paramètre
Call ProcédureDeTraitement(Filename)
End If
End If
Search = Dir$() ' Recherche le prochain fichier
DoEvents
Loop Until Search = "" ' Boucle tant qu'il trouve des fichiers
Public Sub ProcédureDeTraitement(fichier As String)
Open fichier For Input As #2 '<-ce numero doit etre different pour chaque fichier si on ne ferme pas le fichier avant d'ouvir le suivant.
While Not EOF(2) 'test si fin du fichier
Input #2, variable_string 'lecture de la ligne du fichier source
Do While InStr(1, variable_string, "<") <> 0
v_instr1 = InStr(1, variable_string, "<")
If v_instr1 > 0 Then
v_instr2 = InStr(1, variable_string, ">")
r = Mid(variable_string, 1, v_instr1)
T = Mid(variable_string, v_instr2 + 2)
variable_string = T
End If
Loop
Print #1, variable_string 'ajout de la ligne dans le fichier final
Wend
Close #2
End Sub
###########################################
j'ai aussi un bout de code qui permet d'enlever les balises m'a je sais po comment mixer tout ça !
Private Sub command1_click()
Dim i As Long, j As Long, k As String * 1, Balise As Boolean
Open fichier For Binary As #1
Open fichier1 For Binary As #1
Balise = False
For i = 1 To LOF(1)
Do
Get 1, i, k ' lecture des caractères du fichier Html
If k = "<" Then ' début de balise
Balise = True
Exit Do
End If
If k = ">" Then ' fin de balise
Balise = False
Exit Do
End If
If Balise Then Exit Do ' dans la balise
j = j + 1 ' hors balise : récupérer le texte
Put 2, j, k
cs_pluplu
Messages postés615Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention 4 juillet 2012 8 avril 2004 à 21:06
Pascal Laurençon
Regarde plustôt du coté de l'Api "SHFileOperation" tu fais cela en deux lignes de code et en plus tu as la petite animation du fichier qui vole d'un dossier à un autre comme lorsque tu utilise explorer pour déplacer des fichiers.
je vais essayer de te joindre un bout de code en attachement si je trouve ton adresse Email