1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
| Imports System.IO
Public Class MegaSIRH
Dim txtSource2 As String
Private Sub btnParcourir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnParcourir.Click
Dim txtSource As IO.Stream
Dim OpenFileDialog1 As New OpenFileDialog
'j'ouvre que les fichiers txt (extraction de Mega...
'dans une petite fenetre et à la fermeture retour dans le repertoire
OpenFileDialog1.Filter = "fichier txt (*.txt)|*.txt"
OpenFileDialog1.Title = "Ouvrir le fichier à traiter"
OpenFileDialog1.FilterIndex = 2
OpenFileDialog1.RestoreDirectory = True
'apres ouverture je sauvegarde dans des variables la source
'et je laffiche à coté du bouton
If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
txtSource = OpenFileDialog1.OpenFile()
txtSource2 = OpenFileDialog1.FileName
tbxParcourir.Text = txtSource2
End If
End Sub
Private Sub btnTraiter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTraiter.Click
If (txtSource2 = Nothing) Then
'test si un fichier a été choisie
MsgBox("Veuillez choisir un fichier à traiter")
Else
'je copie le fichier source dans le rép temporaire pour travailler dessus
'File.Copy(txtSource2, "C:\temp\toto.txt", True)
'lecture du fichier
Dim lecture As StreamReader = New StreamReader(txtSource2, System.Text.Encoding.Default)
Dim ecriture As StreamWriter = New StreamWriter("C:\temp\tata.txt")
Dim lignes As New List(Of String)
Dim meslignes As New ArrayList
Dim sLine As String
With lecture
'POSITIONNER le flux au début du fichier
.BaseStream.Seek(0, SeekOrigin.Begin)
'TANT QUE le lecteur a quelquechose à lire
While (.Peek > 0)
'LIRE une ligne du fichier et l'ajouter à meslignes
sLine = meslignes.Add(.ReadLine)
sLine = lecture.ReadLine()
'je récupère la ligne
If InStr(sLine, "Publication de transaction") Then
ecriture.WriteLine(sLine)
End If
'je récupere cette ligne qui fait suite à l'intitulé
If InStr(sLine, "Créer") Or InStr(sLine, "Modifier") Then
ecriture.WriteLine(sLine)
End If
End While
End With
lecture.Close()
ecriture.Close()
Dim lecture2 As StreamReader = New StreamReader("C:\temp\tata.txt", System.Text.Encoding.Default)
Dim ecriture2 As StreamWriter = New StreamWriter("C:\temp\tata2.txt")
With lecture2
'POSITIONNER le flux au début du fichier
.BaseStream.Seek(0, SeekOrigin.Begin)
'TANT QUE le lecteur a quelquechose à lire
While (.Peek > 0)
'LIRE une ligne du fichier et l'ajouter à meslignes
sLine = meslignes.Add(.ReadLine)
sLine = lecture2.ReadLine()
'ici je met en forme ce que j'ai récupéré comme ligne
If InStr(sLine, "(Publication de transaction) DSIT-EH") Or InStr(sLine, "(Publication de transaction) DSIT-E Urbanisme") Or InStr(sLine, "(Publication de transaction) DMII") Or InStr(sLine, "(Publication de transaction) DSIT-EX") Or InStr(sLine, "(Publication de transaction) DSIT-E Stage") Or InStr(sLine, "(Publication de transaction) DSIT-EEG") Or InStr(sLine, "(Publication de transaction) DSIT-EM") Or InStr(sLine, "(Publication de transaction) DSIT-EC") Or InStr(sLine, "(Publication de transaction) DDGE") Or InStr(sLine, "(Publication de transaction) DSIT-ET") Or InStr(sLine, "(Publication de transaction) DSIT-EFG") Then
ecriture2.WriteLine("DSIT")
End If
If InStr(sLine, "(Publication de transaction) RHG-SI") Then
ecriture2.WriteLine("RHG-SI")
End If
If InStr(sLine, "Créer") Or InStr(sLine, "Modifier") Then
ecriture2.WriteLine(sLine)
End If
End While
End With
lecture2.Close()
ecriture2.Close()
End If
End Sub
End Class |
Partager