PDA

Visualizza la versione completa : [VB] file di testo AIUTO!!!!!!!!


clapap
30-05-2002, 09:11
Ciao a tutti!

ho una variabile (che contine la riga da scrivere sul file), quando la scrive perch mi aggiunge un blank in fondo?

la variabile di 295 caratteri e la riga su chi vado a ascrivere 296 come mai??

il comado print #2, (nomevariabile)


grazie

steno12
30-05-2002, 10:53
posta il codice..............

clapap
30-05-2002, 11:03
Private Sub Esegui_Click()
Dim inizio, fine As String
dim textline as string *295
detfile = destfile

Open sFile For Input As #1

Open dfile For Output As #2

Do While Not EOF(1)
cont1 = 0
Line Input #1, textline
linedest = textline
c = Mid(textline, 41, 1)
inizio = Mid(textline, 1, 30)
NUBOLL = Mid(textline, 31, 15)
fine = Mid(textline, 46, 250)
If c = " " Then
Else
For cont = 1 To 5
c = Mid(NUBOLL, cont, 1)
If c = "0" Then
cont1 = cont1 + 1
Else
End If
If cont1 = 5 And cont = 5 Then
NUBOLL = Mid(textline, 36, 10) + " "
Else
End If

Next cont
End If
textline = inizio + NUBOLL + fine

Print #2, textline


Loop

Close #1
Close #2


MsgBox "ESECUZIONE TERMINATA", , "Esecuzione Terminata"

End Sub

steno12
30-05-2002, 11:23
Certamente............ quando registri la stringa ti aggiunge un ritorno a capo chr(13).
se vai a rileggere il secondo file leggerai due due linee, la seconda vuota.

ma a cosa ti serve questo codice?

clapap
30-05-2002, 12:01
il file destinazione devo darlo in pasto ad una procedura su as/400 e mi serve il file senza il blank a vine riga!

steno12
30-05-2002, 16:49
Ecco un'altro punto a favore del c++
il vb ti scrive in automatico un chr(13), e quando lo leggi in input, l'ultima riga vuota non la prende in considerazione, solo se vuota all'inizio o prima della fine.
In c invece puoi ottenere che alla fine non vi sia un ritorno carrello.

vediamo se trovo qualcosa a riguardo

lufo5
30-05-2002, 22:23
non l'ho provato, ma prova a scrivere cos:

Print #2, textline Tab

(spero di aver interpretato correttamente quello che c' scritto nell'MSDN (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbenlr98/html/vastmprint.asp) )

steno12
30-05-2002, 23:18
Trovata la soluzione come promesso..............

Print #1, a$;

metti il punto e virgola e nel file non avrai il ritorno a capo, chiaramente se registri pi linee, il punto e virgola lo devi mettere sull'ultima linea da registrare.

link
homepage http://%77%77%77%2e%74%77%6f%72%6b%2e%69%74/
forum http://%77%77%77%2e%74%77%6f%72%6b%2e%69%74/public/twforum/default.asp

Loading