Gå til innhold

Uønskede tegn ved Lagring om bat fil


Anbefalte innlegg

Heisann

 

Har nå laget et lite program der jeg skal lagre resultatene som programmet genererer i en richtextbox.

Vist jeg lagrer som RTF så blir alt helt bra, men vist jeg prøver å lagre som VBS eller BAT så kommer følgende tegn med i filen:

 

{\rtf1\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}

\viewkind4\uc1\pard\lang1033\f0\fs17 "her kommer teksten fra boksen"}

 

Hvordan får jeg til at denne teksten forsvinner og hvorfor kommer den?

Opplever samme resultat ved bruk av en textbox også :(

 

Jeg bruker en standar SaveFileDialog som lagrins "formiddler" (eller hva man skal si)

Lenke til kommentar
Videoannonse
Annonse

{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fnil\fcharset0 MS Sans Serif;}}
\viewkind4\uc1\pard\lang1044\f0\fs17 RichTextBox1
\par }

Du får noe slik, ja? Da antar jeg at du bruker .SaveFile-egenskaper innebygd i Richtextboxen. Den lagrer nemlig fonter brukt, farger, osv. Prøv dette istedet:

 

Private Sub SaveFile(Text As String, Path As String)
   Open Path For Output As #1
       Print #1, Text
   Close #1
End Sub

Brukes slik:

SaveFile RichTextBox1.Text, "C:\testfil.txt"

Endret av Jonas
Lenke til kommentar

Koden jeg bruker er:

 
       If (SaveFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK) _
           And (SaveFileDialog1.FileName.Length > 0) Then

           
           RichTextBox1.SaveFile(SaveFileDialog1.FileName)
       End If

 

Prøvde den koden du nevner her men da får jeg bare opp at Open Path ikke er deklarert osv

 

Men med den koden, da vil den lagre til det stedet og det navnet som blir definert hver gang? Jeg vil heller ha det slik at man skal kunne velge lagrinssted og filnavn. (save as dialog)

Endret av Svar
Lenke til kommentar

Hm, det ser ut som du bruker .net, korrekt? Blir verre, da koden jeg ga deg er VB6. Uansett, om den fungerer eller om det ikke skal så mye til for å få den til å fungere, så bytt ut

RichTextBox1.SaveFile(SaveFileDialog1.FileName)

Med

SaveFile RichTextBox1.Text, SaveFileDialog1.FileName

Lenke til kommentar

Jeg bruker VB 2005 express, beklager at jeg ikke nevnte dette tidligere :blush:

 

"SaveFile" må fremdeles deklareres, men jeg forstår ikke helt hva den skal deklareres som.

 

Private Sub SaveFile(Text As String, Path As String)
  Open Path For Output As #1
      Print #1, Text
  Close #1
End Sub

 

Denne koden som du skrev får jeg litt problemer med, da får jeg feilmelding om at Open Path ikke er deklarert.

Lenke til kommentar

Ja, file handling blir gjort på en helt annen måte i .Net, om jeg husker riktig. Lastet nettop ned VB 2005 express, og fikk denne koden til å fungere:

Imports System.IO

Public Class Form1

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       SaveFile(RichTextBox1.Text, "C:\test.txt")
   End Sub

   Private Sub SaveFile(ByVal Text As String, ByVal Path As String)
       Dim FS As New FileStream(Path, FileMode.Create, FileAccess.Write)
       Dim SW As New StreamWriter(FS)

       SW.BaseStream.Seek(0, SeekOrigin.End)
       SW.WriteLine(Text)

       SW.Close()
   End Sub

End Class

Det som er vesentlig i denne koden er SaveFile-funksjonen (Of course), måten den brukes (Her ligger den i Form_Load) og "Imports System.IO".

 

Håper det hjalp. :)

Lenke til kommentar

Nå fikk jeg det til slik jeg ville :D

 

 If (SaveFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK) _
                 And (SaveFileDialog1.FileName.Length > 0) Then


           Dim File As New IO.FileStream(SaveFileDialog1.FileName, IO.FileMode.Create)
       Dim Writer As New IO.StreamWriter(File, System.Text.Encoding.UTF8)


       Writer.Write(TextBox7.Text)


       Writer.Close()




       End If

 

Tusen takk for hjelpen selv om resultatet mitt ble litt anderledes.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...