Hej Hej, detta har jag svarat på många ggr, så jag föredrar att du letar effter ditt problem här i forumen. Kort och snabbt beror detta på att DU kör UTF-8 som default i .Net (Se web.config eller machine.config m.m... strömmar använder tom by default utf-8, för att använda det som står i Web.Config eller som windows defaultar till så måste duy explicit ange det när du skapar din stream reader (eller writer); btw, varför gör du en sådan serverkontroll när det finns userkontrolls som funkar precis som includes? Bara nyfiken. Hej Jag har flera siter som ska ha tex samma header och footer och vill inte behöva kopiera userkontroller emellan om jag gör ändringar. Nu ligger html:en i separat fil som kontrollen läser in. Ändrar jag filen ändras innehållet överallt där den används. Kanske finns andra sätt också, men det här är ett... det är precis det som händer med userkontrollen, å,ä,ö visas inte vid inläsning från fil
Jag har gjort en serverkontroll som används för att göra motsvarande "include" på en sida, om man tex vill lägga till siduvud.
Kontrollen läser från en fil där koden man vill inkludera i sidan finns. Tyvärr tappas å, ä och ö bort på vägen, så om det står tex "<H3>Detta är ett sidhuvud</H3>" i filen så kommer det visas som "Detta r ett sidhuvud" i sidan.
Har det med språkinställningar att göra (fast jag har svenska satt som språk) eller varför visas inte å,äö som de ska? Sv: å,ä,ö visas inte vid inläsning från fil
När du läser in en fil kan du även där ange vilken unicode typ du vill nyttja.
Testa att ändra denna då du läser in filen...
Mvh JohanSv: å,ä,ö visas inte vid inläsning från fil
<code>
StreamReader sr = new StreamReader(myFileStream, System.Text.Encoding.Default);
</code>
eller så ber du explicit efter en encoding:
<code>
StreamReader sr = new StreamReader(myFileStream, System.Text.Encoding.GetEncoding("iso-8859-1"));
</code>
Jag föredrar den sista, och då kanske spara undan encodingen globalt ngnstans så jag akn använda den överallt:
<code>
using System;
using System.IO;
using System.Text;
public class Blobb
{
static Encoding EncIso88591 = Encoding.GetEncoding("iso-8859-1");
void Read()
{
// do wahtever
StreamReader sr = new StreamReader(myFileStream, EncIso88591);
}
}
</code>
Nu kan du vara säker på att få rätt encoding, oavsett plattform eller språkinställningar.Sv: å,ä,ö visas inte vid inläsning från fil
Sv: å,ä,ö visas inte vid inläsning från fil
Tack för svar. Jag har sökt på i forumen, men det gick otroligt trögt och kom inte upp något vettigt svar. Kanske var problem just då...Sv: å,ä,ö visas inte vid inläsning från fil
/MirabellSv: å,ä,ö visas inte vid inläsning från fil
om du ändrar userkontrollen så ändras det överallt där det används, du behöver inte kopiera ut dem igen,