none
Por qué se añade dobles comillas y coma cuando guardo el fichero

    Question

  • A continuación os muestro un código que genero para guardar datos en un fichero, lo gracioso es que ademas del valor de la variable añade dobles comillas y coma al final. El código es el siguiente:

     Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

            'Specify the files for Files of type list

            'SaveFileDialog1.Filter = "All Files|*.*|Text Files|*.txt"

            SaveFileDialog1.Filter = "html files (*.html)|*.html"

     

            'Make All Files the default selection

            SaveFileDialog1.FilterIndex = 1

            'Display the dialog box

            'Also check the whether the user clicked OK button in the dialog box

            If SaveFileDialog1.ShowDialog() = DialogResult.OK Then

                Dim FileNumber As Integer

                FileNumber = FreeFile()

     

                'Create a file with the specified name in the output mode

                FileOpen(FileNumber, SaveFileDialog1.FileName, OpenMode.Output)

     

                'Write the specified data to a file

                'Here the data is the contents of the text box

                Dim valor As String

                valor = "pepe"

                Write(FileNumber, valor)

            End If

        End Sub

    El resultado del código genera el siguiente fichero:

    "pepe",

    Si se puede realizar de otra forma os lo agradecería porque debo generar un documento html y claro con dobles comillas y coma, el resultado no es interpretado por el navegador.

    Un saludo y muchas gracias,

    Gus

    Friday, October 07, 2011 10:13 AM

Answers

  • Hola a todos,

        Efectivamente estaba utilizando erróneamente la función para guardar datos en un fichero. A continuación os paso como lo he hecho:

    Dim sr As StreamWriter = New StreamWriter("ruta")

            sr.Write(rchMail.Text)

            sr.Close()

            WebBrowser1.Navigate("file:///" & path)

            MsgBox("Los datos se han guardado correctamente")

     

    Muchísimas gracias por la aclaración.

    • Marked as answer by PANCHETE Monday, October 10, 2011 1:55 PM
    Monday, October 10, 2011 1:55 PM

All replies

  • Buenas PANCHETE.

    Hay varias cosas que no comprendo muy bien.

    Detallanos el método FreeFile()

    El método Write es el responsable de escribir en el fichero, ¿es así?

    ¿Cuando hablas de resultado es que lo que escribe en el fichero es "pepe",?

    Utiliza la clase StreamWriter para crear y escribir en el archivo, sería algo así:

    Dim sw As New System.IO.StreamWriter(SaveFileDialog1.FileName)
    sw.WriteLine(valor)
    sw.Close()
    

    Un saludo.


    Antonio López Atienza
    Microsoft Community Contributor
    .NET Developer
    Code examples
    http://www.lopezatienza.es
    Friday, October 07, 2011 11:43 AM
  • hola

    porque usas el FileOpen para trabjar con el archivo, esto estaba bueno en vb6, pero en .net hay mejores librerias

    como ser toda la funcionalidad de System.IO

    algo como esto

    Cómo: Escribir texto en un archivo

    usa el StreamWriter

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Friday, October 07, 2011 12:33 PM
  • Hola a todos,

        Efectivamente estaba utilizando erróneamente la función para guardar datos en un fichero. A continuación os paso como lo he hecho:

    Dim sr As StreamWriter = New StreamWriter("ruta")

            sr.Write(rchMail.Text)

            sr.Close()

            WebBrowser1.Navigate("file:///" & path)

            MsgBox("Los datos se han guardado correctamente")

     

    Muchísimas gracias por la aclaración.

    • Marked as answer by PANCHETE Monday, October 10, 2011 1:55 PM
    Monday, October 10, 2011 1:55 PM