Ik heb een html bestand dat een euro teken bevat (€). Ik lees dit bestand in middels een StreamReader, als volgt:
Als ik deze string nu weer wegschrijf naar een ander bestand middels de volgende code:
Dan verwijnt het euro teken compleet?! Ik heb het idee dat ik iets fout doe want het .NET framework heeft toch een vrij goede ondersteuning voor unicode ed...
Ik heb geprobeerd om tijdens het inlezen én wegschrijven expliciet UTF-8 encoding op te geven (source bestand is in UTF-8), maar dat werkt ook niet.
Ik heb ergens het idee dat ik één of andere Culture setting mis (ik heb geprobeerd de CurrentCulture en CurrentUICulture naar nl-NL te zetten alhowel dit niet nodig is aangezien mijn systeem deze instellingen al heeft).
Ik zou het bestand in kunnen lezen in een byte array en vervolgens weer wegschrijven maar dat heeft geen zin want mijn applicatie moet een aantal String.Replace() acties uitvoeren op de tekst.
Iemand enig idee wat ik fout doe of kan iemand me een betere manier aanwijzen om dit op te lossen?
Alvast bedankt.
code:
1
2
| StreamReader reader = new StreamReader ("file.htm");
string s = reader.ReadToEnd(); |
Als ik deze string nu weer wegschrijf naar een ander bestand middels de volgende code:
code:
1
2
| StreamWriter writer = new StreamWriter ("file2.html");
writer.Write(s); |
Dan verwijnt het euro teken compleet?! Ik heb het idee dat ik iets fout doe want het .NET framework heeft toch een vrij goede ondersteuning voor unicode ed...
Ik heb geprobeerd om tijdens het inlezen én wegschrijven expliciet UTF-8 encoding op te geven (source bestand is in UTF-8), maar dat werkt ook niet.
Ik heb ergens het idee dat ik één of andere Culture setting mis (ik heb geprobeerd de CurrentCulture en CurrentUICulture naar nl-NL te zetten alhowel dit niet nodig is aangezien mijn systeem deze instellingen al heeft).
Ik zou het bestand in kunnen lezen in een byte array en vervolgens weer wegschrijven maar dat heeft geen zin want mijn applicatie moet een aantal String.Replace() acties uitvoeren op de tekst.
Iemand enig idee wat ik fout doe of kan iemand me een betere manier aanwijzen om dit op te lossen?
Alvast bedankt.