LucaJonny,
| srStreamReader = New StreamReader(sFile, Encoding.Default)
| sFileText = srStreamReader.ReadToEnd()
The sFileText variable more then likely contains your extended characters,
as Armin suggests, use the Debug window in VS to verify.
| Dim swStreamWriter As TextWriter = New StreamWriter(sFile & ".new")
| swStreamWriter.Write(sFileText)
Ah! There's the Rub!!
You wrote the file in UTF-8 instead of ANSI, all your "extended characters"
now have a different encoding.
If you want to write in your Ansi encoding as defined by your Windows
Control Panel, you need to include Encoding.Default on the StreamWriter
also.
Dim swStreamWriter As TextWriter = New StreamWriter(sfile & ".new",
False, Encoding.Default)
swStreamWriter.Write(sFileText)
Remember both StreamReader & StreamWriter default to UTF-8 encoding, instead
of the Ansi encoding defined by the regional settings under your Windows
Control Panel.
Hope this helps
Jay
as "extended" characters I mean:
ù
°
½
?
à
this is my code:
Dim srStreamReader As StreamReader
Dim sFile As String = "C:\Temp\MyText.txt"
Dim sFileText As String
srStreamReader = New StreamReader(sFile, Encoding.Default)
sFileText = srStreamReader.ReadToEnd()
srStreamReader.Close()
Dim swStreamWriter As TextWriter = New StreamWriter(sFile & ".new")
swStreamWriter.Write(sFileText)
swStreamWriter.Close()
C:\Temp\MyText.txt seem like:
This is my text file.
In Italian "città" means city
The european currency is EURO (?)
.....
......
.......
C:\Temp\MyText.txt.new seem like:
This is my text file.
In Italian "città " means city
The european currency is EURO (â,¬)
.....
......
.......
Thanks
Armin Zingler ha scritto: