Vb fusille mon .txt o lieu de bosser sagement dessus!!!
stidjeanmoulin
Messages postés29Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention29 avril 2003
-
29 avril 2003 à 10:37
stidjeanmoulin
Messages postés29Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention29 avril 2003
-
29 avril 2003 à 11:03
mojn problem est le suivant:
je travaille sur un doc texte
g une form ki s'appelle SuprimerDesColonnes
dessus ya deux textbox tnomdufichier et tnomdufichierpropre
un textbox ki s'appelle ttauxde0
deux picturebox pprogression et pcompteur
et un comandbutton csupression
le code de la form est le suivant :
Const NombreDeLignes = 10
Const NombreDeColonnes = 27
Private Sub CSupression_Click()
Dim BoiteDeMessage As Integer
Dim Fichier As Integer
Dim TauxDeZero() As Single
Dim Colonne As Integer
Dim Ligne As Integer
Dim ElementLu As String
Dim SuprimerLaColonne() As Boolean
Dim FichierPropre As Integer
Dim LigneAEcrire As String
ReDim SuprimerLaColonne(1 To NombreDeColonnes)
ReDim TauxDeZero(1 To NombreDeColonnes)
PProgression.Print "début de l'execution"
'On Error GoTo TraitementErreur
'remplacer les tabulations par des virgules
'(separateur reconnu pour les chaines de charactere)
PProgression.Print "remplacement des tabulations par des virgules"
Call Remplacement("9", "44")
'lecture du fichier pour compter le taux de zero de chaque colonne
PProgression.Print "comptage du taux de zero"
Fichier = FreeFile
Open TNomDuFichier.Text For Input As Fichier
For Ligne = 1 To NombreDeLignes
For Colonne = 1 To NombreDeColonnes
Input #Fichier, ElementLu If ElementLu "0" Or ElementLu "" Then
TauxDeZero(Colonne) = TauxDeZero(Colonne) + 1 / (NombreDeLignes - 1)
End If
Next Colonne
Next Ligne
Close Fichier
'identification des colonnes a suprimer
PProgression.Print "identification des colonnes a suprimer"
For Colonne = 1 To NombreDeColonnes
If (TauxDeZero(Colonne) * 100) >= CSng(TTaux0.Text) Then
SuprimerLaColonne(Colonne) = True
Else
SuprimerLaColonne(Colonne) = False
End If
Next Colonne
'création d'un fichier sans les colonnes à suprimées
PProgression.Print "création d'un fichier sans les colonnes à suprimées"
Fichier = FreeFile
Open TNomDuFichier.Text For Input As Fichier
FichierPropre = FreeFile
Open TNomDuFicherPropre.Text For Output As FichierPropre
For Ligne = 1 To NombreDeLignes
For Colonne = 1 To NombreDeColonnes
Input #Fichier, ElementLu
If SuprimerLaColonne(Colonne) = False Then
If LigneAEcrire = "" Then
LigneAEcrire = ElementLu
Else
LigneAEcrire = LigneAEcrire + Chr(9) + ElementLu
End If
End If
Next Colonne
Write #FichierPropre, LigneAEcrire
LigneAEcrire = ""
Next Ligne
Close Fichier
Close FichierPropre
'remplacer les virgules par des tabulations
PProgression.Print "remplacement des virgues par des tabulations"
Call Remplacement("44", "9")
PProgression.Print "terminé"
Exit Sub
le code du module est :
Public Sub Remplacement(ByVal Car1 As Long, Car2 As Long)
Dim Fichier As Integer
Dim Compteur As Long
Dim Caractere As String * 1
Fichier = FreeFile
Open SuprimerDesColonnes.TNomDuFichier.Text For Binary As Fichier
Compteur = 1
Do While EOF(Fichier) = False
Get #Fichier, Compteur, Caractere
If Caractere = Chr(Car1) Then
Put #Fichier, Compteur, Chr(Car2)
End If
Compteur = Compteur + 1
SuprimerDesColonnes.PCompteur.Cls
SuprimerDesColonnes.PCompteur.Print CStr(Compteur)
Loop
Close Fichier
End Sub
ya manifestement au moins un problème vu ke:
1.je recupere po le fichier de base dans l'etat ou il était avant ke je lance l'execution(c plein de ptits carrés !!!)
2.le fichier propre (crée par l'exe)est plein de carrés aussi !!!
si ya qqn ki connait la solution a ce problem ou deja ki c ou est le problem... sa srai cool :question)
:) STID JeanMoulin :)
A voir également:
Vb fusille mon .txt o lieu de bosser sagement dessus!!!