å,ä,ö visas inte vid inläsning från fil
Hej
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?
Svara
Sv: å,ä,ö visas inte vid inläsning från fil
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...
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 Johan
Svara
Sv: å,ä,ö visas inte vid inläsning från fil
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);
<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.
Svara
Sv: å,ä,ö visas inte vid inläsning från fil
btw, varför gör du en sådan serverkontroll när det finns userkontrolls som funkar precis som includes? Bara nyfiken.
Svara
Sv: å,ä,ö visas inte vid inläsning från fil
Hej
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å...
Svara
Sv: å,ä,ö visas inte vid inläsning från fil
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...
/Mirabell
Svara
Sv: å,ä,ö visas inte vid inläsning från fil
det är precis det som händer med userkontrollen,
om du ändrar userkontrollen så ändras det överallt där det används, du behöver inte kopiera ut dem igen,
Svara