[VB.NET] Richtextbox in .txt-datei übertragen MIT Zeilenumbruch!

03/15/2013 16:49 maxasoft#1
Ich habe folgendes Problem:

Wenn ich per My.Computer.FileSystem.WriteAllText() den Inhalt einer Richtextbox in eine txt-Datei schreiben will, dann werden die Zeilumbrüche nicht übertragen:

PHP Code:
Hallo:Wie gehts
Geht gut
:Dir
Wird zu:

PHP Code:
Hallo:Wie gehtsGeht gut:Dir
Per vbnewline oder vbcrlf funktioniert das nicht, Google konnte mir auch nicht weiterhelfen )':
03/15/2013 17:01 Mr. Awsome#2
Code:
Dim Builder as String = ""
Dim index as integer = -1

for each line() in richtextbox1.lines
index+=1
builder &= richtextbox1.line(index) & vbnewline
next

my.computer.filesystem.writealltext(pfad, builder, false)
03/15/2013 17:13 maxasoft#3
Der Code ist schon bisschen älter oder?
Funkt leider nicht, trotzdem Danke ^^
PS: Ich arbeite mit Visual Studio 2012 Professional ^^
03/15/2013 18:38 snow#4
Ein '\n' anhängen, kann VB das? Das steht für Newline. Evtl. benötigst du auch '\r\n', weiß nicht, wie Windows das löst.
Also dann line = zeileAusDerTextBox & "\r\n"
03/15/2013 18:42 maxasoft#5
Ich probiers mal aus...
03/15/2013 18:54 Graphicscore#6
eigentlich sollte es mit
Code:
 Dim MyText As String = Richtextbox1.Text
        My.Computer.FileSystem.WriteAllText("C:\bla.txt, MyText)
funktionieren ....
03/15/2013 19:36 maxasoft#7
Dann werden aber die Zeilenumbrüche nicht mitbeschrieben -.-
03/15/2013 20:14 Requi#8
Mach mal mit WriteAllLines

Glaube das gibt es
03/15/2013 21:44 maxasoft#9
hab jzt ne Lösung gefunden:

PHP Code:
SaveFileDialog1.ShowDialog()
        
Dim path As String SaveFileDialog1.FileName
        
If path "" Then
        
Else
            Try
                
Dim fs As FileStream File.Create(path ".txt")
                
fs.Close()
                
Dim text As String ""
                
Dim sr As System.IO.StreamWriter
                sr 
My.Computer.FileSystem.OpenTextFileWriter(path ".txt"False)

                For 
Each item As ListViewItem In ListView1.Items

                    text 
+= item.Text vbCrLf

                Next
                sr
.WriteLine(text)
                
sr.Close()
                
Button2.Enabled True
            
Catch ex As Exception

            End 
Try

        
End If 
Das Ganze könnte man auch mit ner Richtextbox machen, wenn man einfach die Zeilen nach & nach ausliest.

Wieso das jzt klappt & das andere nicht bleibt mir ein Rätsel...
03/16/2013 14:17 Graphicscore#10
Code:
vbCrLf
steht für einen Zeilenumbruch deswegen ließt er immer ein Item aus schreibt es in die Datei + Zeilenumbruch , und so weiter
03/16/2013 14:50 maxasoft#11
Aber wieso überträgt er die Zeilenumbrüche in der RTb, welche auch mit vbcrlf erzeugt wurden, nicht, sondern nur bei direkter Zerlegung & Anhängung?
03/16/2013 15:11 tolio#12
haste in den controls mal die wordwrap und multiline einstellungen überprüft
an sowas kanns liegen das sachen die da sind nicht entsprechend angezeigt werden
ka was es da noch für sachen in einer rtb gibt
03/18/2013 23:42 unknwnx.#13
Öffne es nicht mit dem editor.exe sondern mit dem notepad.exe
.... Siehe da, die Umbrüche sind vorhanden =)
Liegt also nicht an deinem Script / deiner Source, sondern am standartmäßigen Editor!