Hej! Titta på denna: Hej!Encodingproblem
Jag har en websida där man kan söka och hämta dokument som har med ett sökord att göra. Användaren ska kunna ange ett sökord, programmet skapar en url med sökordet och får tillbaka en html-sida med hittad information.
Urlen som skapas ser ut på den här formen:
http://foo/bar?user=web&orderby=name&type=search&searchtext=miljö
Problemet är att när sökordet innehåller åäö, så får jag svaret att inga dokument hittades, men annars går det bra. Koden ser ut enligt följande:
<code>
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.ContentType = "text//html";
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
StreamReader reader = new StreamReader(res.GetResponseStream(),Encoding.GetEncoding("ISO-8859-1"));
String input = "";
String line;
while((line = reader.ReadLine()) != null)
{
input += line;
}
reader.Close();
res.Close();
</code>
Vad är det jag inte har tänkt på? Jag har testat med Encoding.GetEncoding("ISO-8859-1"), Encoding.Default, Encoding.UTF7, Encoding.UTF8, Encoding.ASCII, Encoding.Unicode...ja med allt känns det som. Men det vill inte funka.
Hoppas ni kan hjälpa mig.
Mvh,
Naz
Uppdatering:
Glömde att nämna att när jag skriver samma url i browsern, då funkar det bra och jag får svar.Sv: Encodingproblem
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwebhttputilityclassurlencodetopic3.asp
...och då kan du också titta på:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwebhttputilityclassurldecodetopic3.asp
Saken är ju den att som bekant är det lite problem med att använda ÅÄÖ i webbadresser, eller hur?
Hepp!
//Mikael SandSv: Encodingproblem
Ibland glömmer man bort det självklara! ;-) Tack. Det hjälpte.
Mvh,
Naz