Springen naar inhoud


Toevoegen aan Textbestand


  • Log in a.u.b. om te beantwoorden
Er zijn 7 reacties in dit onderwerp

#1 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:07

Citeren

Wanneer de path van het programma geselecteerd wordt met een commondialog worden de gegevens niet weggeschreven:


Citeren

nee das de bedoeling niet dat de data toegevoegd word wanneer een bestand geselecteerd is,deze code wordt appart uitgevoerd....



Hoe kan je dan data toevoegen wanneer je geen bestand kiest?

Citeren

De namen zijn (string) waarden die moeten weggeschreven worden naar het textbestand.Ik heb deze al proberen veranderen maar blijft hetzelfde probleem.


Nu begrijp ik eigenlijk niet meer wat je wilt.
Kan je dan eens duidelijk uitleggen wat je wilt?
Ik ben wel bereid om te helpen maar ik sta hier voor een raadsel.

#2 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:07

nee das de bedoeling niet dat de data toegevoegd word wanneer een bestand geselecteerd is,deze code wordt appart uitgevoerd....

#3 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:07

Code:

Dim BestNaam, BestPad As String
        If cdlOpslaan.ShowDialog = DialogResult.OK Then
             BestPad = cdlOpslaan.InitialDirectory
             BestNaam = cdlOpslaan.FileName
             Dim fs As New IO.FileStream(BestNaam, IO.FileMode.Append, IO.FileAccess.Write)
             Dim ws As New IO.StreamWriter(fs)
             ws.BaseStream.Seek(0, IO.SeekOrigin.End)
             ws.WriteLine(txtTekst1.Text + " - " + txtTekst2.Text + " - " + txtTekst3.Text + " // " + BestNaam)
             ws.Flush()
             ws.Close()
        End If



Dit is de code die ik gebruikt heb om uw probleem te testen en bij mij wordt de tekst wel weggeschreven.
Wat heb je nodig voor deze code?
op je form 3 tekstboxen txtTekst1, txtTeks2 en txtTekst3
1 commondialog cdlOpslaan
1 commandbutton btnSave
1 tekstbestand data.txt

Wanneer je op de knop btnSave klikt wordt de code uitgevoerd.

Je kan gelijk wat in de tekstboxen plaatsen.

#4 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:07

nee nog steeds hetzelfde probleem

#5 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:06

Vervang de '&' karakters eens in '+' tekens
In VB.NET is het aangeraden om + tekens te gebruiken wanneer men wil concatineren

#6 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:06

De namen zijn (string) waarden die moeten weggeschreven worden naar het textbestand.Ik heb deze al proberen veranderen maar blijft hetzelfde probleem.

Wat de code betreft is het met de vermelde code waar ik problemen bij heb:


Private Sub WriteToFile(ByVal strName As String, ByVal strCaption As String, ByVal strVoice As String, ByVal strPath As String)

        'Doel: Nieuwe gegevens toevoegen aan textbestand
        Try

             'Declaratie variabelen
             Dim fs As New System.IO.FileStream("data.txt", FileMode.Append, FileAccess.Write)
             Dim write As New StreamWriter(fs)

             write.BaseStream.Seek(0, SeekOrigin.End)


             'Schrijf de gegevens
             write.WriteLine(strName & "-" & strCaption & "//" & strVoice & "*" & strPath)


             'MsgBox(Name & "-" & Caption & "//" & Voice & "*" & Path)

             write.Flush()
             write.Close()

             'Toon aan de gebruiker dat de gegevens goed wegggeschreven zijn
             lblStatus.ForeColor = Color.Green
             lblStatus.Text = "Command Successfuly Added !!"

             btnNew.Text = "&New"

             'Call ReadData()

        Catch ex As Exception
             'Toon foutmelding
             lblStatus.ForeColor = Color.Red
             lblStatus.Text = ex.Message & " !"
        End Try


    End Sub

Wanneer de path van het programma geselecteerd wordt met een commondialog worden de gegevens niet weggeschreven:

Call WriteToFile(txtName.Text, txtCaption.Text, txtVoice.Text, txtPath.Text)

(deze code staat vermeld bij een button (add),de bestandsnaam wordt in txtPath gezet na het selecteren (btnBrowse) ervan via commondialog)


Maar bij het handmatig invullen wel

#7 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:06

wat is Name , Caption en Voice?
Ik denk dat dit gereserveerde woorden zijn. Wanneer je dit als variabelen gebruikt zou het hier kunnen verkeerd lopen.

Uit je code kunnen we eigenlijk niet veel opmaken.

Schrijf eens de code wanneer het goed gaat en dan de code wanneer het fout gaat

#8 VB6Dummy

VB6Dummy

    VBIB Godfather

  • Leden
  • PipPipPipPipPipPipPipPip
  • 5388 berichten
    Laatst bezocht 26 dec 2014 17:43

Geplaatst op 04 mei 2011 - 07:06

Ik zit met een raar probleem...ik heb een functie
waarmee een aantal waarden naar een textbestand wordt geschreven.Er zijn 4 parameters die meegegeven worden aan deze functie:

   'Doel: Nieuwe gegevens toevoegen aan textbestand
        Try

             'Declaratie variabelen
             Dim fs As New System.IO.FileStream("data.txt", FileMode.Append, FileAccess.Write)
             Dim write As New StreamWriter(fs)

             write.BaseStream.Seek(0, SeekOrigin.End)


             'Schrijf de gegevens
             write.WriteLine(Name & "-" & Caption & "//" & Voice & "*" & strFilename)


             'MsgBox(Name & "-" & Caption & "//" & Voice & "*" & Path)

             write.Flush()
             write.Close()

             'Toon aan de gebruiker dat de gegevens goed wegggeschreven zijn
             lblStatus.ForeColor = Color.Green
             lblStatus.Text = "Command Successfuly Added !!"

             btnNew.Text = "&New"

        Catch ex As Exception
             'Toon foutmelding
             lblStatus.ForeColor = Color.Red
             lblStatus.Text = ex.Message & " !"
        End Try

1 parameter bevat een bestandsnaam die kan geselecteerd worden met een common dialog.Als ik alle velden manueel invoer en de functie aanroep dan werkt deze maar indien ik een bestand selecteer met de common dialog dan wordt er niets weggeschreven...

De waarden worden wel degelijk doorgegeven en er is ook geen foutmelding.......

Aan wat kan dit liggen  

Alvast bedankt..  

Stefaan




0 gebruiker(s) lezen dit onderwerp

0 lid(leden), 0 bezoeker(s), 0 anonieme gebruikers

Inloggen


Untitled 1

Met dank aan J├╝rgen voor de jarenlange inzet van visualbasic.be (anno dec 2000)
Met dank aan Mike en Ronneke voor de jarenlange inzet van vbib.be (anno dec 2010)
Met dank aan PascalBianca voor de jarenlange inzet van vbib.be (anno dec 2016)