Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117

    [Vb.Net] - StreamWriter che aggiunge caratteri

    Ciao a tutti! Ho un codice abbastanza lungo e complesso con il quale genero una lunga stinga che poi vado a "scrivere" su un file txt. (Il file serve a importare i dati di questo tracciato in un altro programma non sviluppato da me)

    Il problema è che quando vado ad aprire il file mi ritrovo un ritorno a capo "sul finale" del tracciato...

    Ho controllato la lunghezza della stringa nella riga in cui la scrivo sul file con mioFile.WriteLine(miaStringa) ed è corretta...il problema è proprio nella scrittura...

    in sintesi il codice è questo:

    codice:
    Dim miaStringa As String = ""
    'Creo il file txt
    Dim mioFile As New StreamWriter(mioDlg.SelectedPath & "\" & nomeFile, False)
    'Compongo la mia stringa
    
    mioFile.WriteLine(miaStringa)
    MsgBox(miaStringa.Length)
    mioFile.Close()
    mioFile.Dispose()
    Come vedete ho messo una MsgBox che mi da la lunghezza della stringa ed è corretta quando la vedo li, però se poi apro il file mi ritrovo un ritorno a capo dopo l'ultimo carattere della stringa (e se controllo la lunghezza globale mi aggiunge +2 caratteri alla lunghezza "prevista")...
    Questo rende illegibile il file all'altro programma...qualcuno ha qualche idea su che cavolo succede?

    grazie

  2. #2
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    Bè con writeline lui aggiunge sempre alla fine della riga un ritorno a capo, dovresti usare write.

  3. #3
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    dai è così semplice?
    Approfitto per chiederti 2 cose se le sai:
    . Io qui creo una stringa ed ok...ma se dovessi usare il writeLine in futuro son fregata da sto punto di vista?
    .Una stringa ha un limite di caratteri? Perchè sti tracciati a volte son davvero lunghi!

    Grazie! Ora provo con write!

  4. #4
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    Perfetto con write! Grazie 1000! Attendo consigli per i miei 2 dubbi se ne sai qualcosa! Grazie ancoraaaaa!

  5. #5
    Utente di HTML.it L'avatar di Vinsent
    Registrato dal
    May 2011
    Messaggi
    314
    Scusate l' intromissione...
    Per il primo punto puoi intercettare i caratteri "non visibili" che rappresentano il "ritorno a capo", sono Chr(10) e Chr(13), prova a leggere qui:
    http://forum.html.it/forum/showthrea...readid=1491197
    Per il secondo punto ho provato a farmi (al pc...) del male giusto per curiosità:
    codice:
     Dim asd As String
    
        Private Sub Button1_Click() Handles Button1.Click
            Timer1.Interval = 1
            Timer1.Start()
        End Sub
    
        Private Sub Timer1_Tick() Handles Timer1.Tick
            asd = asd & "a"
            Console.WriteLine(asd.Length)
        End Sub
    ho interrotto dopo gli 8000...penso siano sufficienti...

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Veronica80
    dai è così semplice?
    Semplicissimo ... basta leggere la documentazione della WriteLine ...

    . Io qui creo una stringa ed ok...ma se dovessi usare il writeLine in futuro son fregata da sto punto di vista?
    Non capisco ... se usi la WriteLine vuol dire che ti serve quello che fa la WriteLine ...

    .Una stringa ha un limite di caratteri? Perchè sti tracciati a volte son davvero lunghi!
    Non ho mai visto tracciati da milioni di caratteri ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.