WriteAllText in VB ohne Variablenkennung

Hallo an alle,

ich bin umsteiger von VB6 auf VB.net 2005 und habe beim schreiben einer Datei mit My.Computer.FileSystem.WriteAllText das Problem das nach dem speichern die Datei vor dem Text ist eine
„Kennung“ Hex EF BB BF unter vb 6 habe ich dieses problem durch eine erstellung eines eigenen Types umgangen nur wie bekomme ich das unter VB.net hin ?

Cu Stefan

dim htaccess as string
dim ausgabe as string

htaccess = My.Computer.FileSystem.ReadAllText(My.Application.Info.DirectoryPath & „\Daten\htaccess.txt“, System.Text.Encoding.UTF8)

ausgabe = Replace(htaccess, „#UserName#“, Label1.Text)

My.Computer.FileSystem.WriteAllText(mypath & Label2.Text & „.htaccess“, ausgabe, False)

Hallo Stefan,


eine „Kennung“ Hex EF BB BF unter vb 6 habe ich dieses problem
durch eine erstellung eines eigenen Types umgangen nur wie
bekomme ich das unter VB.net hin ?

Die Kennung ist das Byte-Order-Mark eines UTF-8-Texts.
(s. http://en.wikipedia.org/wiki/Byte_Order_Mark)

htaccess =
My.Computer.FileSystem.ReadAllText(My.Application.Info.DirectoryPath
& „\Daten\htaccess.txt“, System.Text.Encoding.UTF8)

ausgabe = Replace(htaccess, „#UserName#“, Label1.Text)

My.Computer.FileSystem.WriteAllText(mypath & Label2.Text &
„.htaccess“, ausgabe, False)

Da Du mit System.Text.Encoding.UTF8 arbeitest, wird die
Kennung geschrieben, damit Programme, die die Datei öffnen,
wissen, wie sie die UTF-8 kodierten Zeichen richtig
interpretieren können.

Ich bezweifel, dass die htaccess UTF-8 unterstützt.
System.Text.ASCIIEncoding sollte die richtige Kodierung für
die htaccess sein.

Viele Grüße
Thomas

Hallo Thomas,

habe den oberen Code zum laden durch:

htaccess = My.Computer.FileSystem.ReadAllText(My.Application.Info.DirectoryPath & „\Daten\htaccess.txt“, System.Text.Encoding.UTF8 ASCII ))

ersetzt

und den Code zum abspeichern durch

My.Computer.FileSystem.WriteAllText(mypath & Label17.Text & „.htaccess“, ausgabe, False, System.Text.Encoding.ASCII )

erweitert und nun get’s.

Danke und Cu

PS: „Du hast gans Recht, dass die .htaccess mit einer Byte-Order-Mark eines UTF-8-Texts nicht geht. Daher stamt ja auch mein Hilferuf !“