0
votes

Comment modifier la ligne de fichier par ligne

J'ai un fichier TXT dans cette syntaxe: xxx

Je souhaite trouver chaque ligne qui ne commence pas avec ' et corrigez-les. Je veux terminer avec: xxx

La nouvelle ligne doit être retirée et ajoutée à la fin de la ligne précédente avec un espace de premier plan. Mon code cicles via une ligne de fichier par ligne et chèques, si le premier caractère est inégal à ' déjà.

J'ai pensé ajouter chaque ligne à un tableau et faire la correction dans ce tableau. J'utiliserais xxx

pour mettre à jour le fichier.

mon code actuel: xxx

Je suis stratifié avec quelle est la meilleure pratique et ce qui est maigre et code rapide car le script doit fonctionner sur plusieurs 1000 fichiers à la fin. Je ne sais pas s'il est possible de stocker la ligne actuelle et la ligne suivante et si la ligne suivante ne démarre pas par ', puis actuelline = actuelLine & "" & nordline et mettre à jour en quelque sorte le fichier, diminuez la valeur de la boucle par une et allez-y.


0 commentaires

3 Réponses :


1
votes

Voici comment je le ferais. XXX


1 commentaires

Merci, cela fonctionne lorsque je modifierai lignes (r) = "'" & lignes (r) à lignes (r - 1) = lignes (R - 1) & "" & lignes (r) . Mais manque-t-il maintenant est que je retire la saleté de la matrice. Dans d'autres langues, j'utiliserais non défini (lignes (r)) .



0
votes

Qu'en est-il de cela:

currentline = File.ReadLine
NextLine = vbNullString
Do 
    If Not File.AtEndOfStream Then
        NextLine = File.ReadLine

        Do While Left$(NextLine, 1) <> "'"
            If Len(currentline) > 0 Then currentline = Trim(currentline) & " "
            currentline = currentline & Trim(NextLine)
            NextLine = File.ReadLine
        Loop
    End If

    Write #1, currentline
    currentline = NextLine

Loop Until File.AtEndOfStream


0 commentaires

1
votes

Basé sur le magnifique code Tinman, essayez cette vSerion xxx


2 commentaires

Génial! Merci beaucoup


De rien. Grand merci à la première affiche @tinman