Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [VB.Net] Lettura File Errata

    salve a tutti,

    stò facendo delle prove di lettura File in VB.Net.

    Ho un programma in vb6 che crea un file txt "prova.txt", scrive "prova" all'interno del File e chiude il file...

    La sub è questa:

    codice:
    Sub Main()
        Dim NumFile, strPercorsoFile, strCorpo
        NumFile = FreeFile
        strCorpo = "prova"
        strPercorsoFile = "C:\Programmi\SMS\Sms da Inviare\prova.txt"
        If Len(Trim$(Dir$(strPercorsoFile))) > 0 Then Kill strPercorsoFile
        Open strPercorsoFile For Append As #NumFile
        Print #NumFile, strCorpo
        Close #NumFile
    End Sub
    il problema nasce con vb.net in quanto quando vado a leggere il file mi restituisce "112" e non "prova" come è nel file.

    Questa è la funzione di lettura:

    codice:
        Function LeggiFile(ByVal PathFile As String) As String
            Dim StreamR As New System.IO.StreamReader(PathFile)
            Return StreamR.Read.ToString
        End Function
    Questa funzione viene richiamata ogni volta che viene creato e modificato un file in "C:\Programmi\SMS\Sms da Inviare" (in questa cartella ci sono solo file txt) in quanto nel programma ho inserito un controllo FileSystemWatcher.

    perchè succede ciò? c'è qualche soluzione?

    grazie

    OPS: HO SBAGLIATO A POSTARE... MI SPOSTATE IN VB.NET? GRAZIE
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

  2. #2
    La Read legge un singolo carattere. Devi usare la ReadToEnd.
    codice:
        Function LeggiFile(ByVal PathFile As String) As String
            Dim tstr As String
            Dim StreamR As New System.IO.StreamReader(PathFile)
            tstr = StreamR.ReadToEnd()
            StreamR.Close()
            Return tstr
        End Function
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    grazie, funziona...

    ora ho un'altro problema ma apro un altro post perchè è un problema diverso
    Bombardare per la pace, è come trombare per la verginità.

    C'è qualcuno al mondo che tromba troppo secondo me...

    Andrea Medici

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.