2016-08-20 5 views
2

Ich benutze die Uri-Klasse, um Daten mit einem PHP-Skript anzufordern. In meinem Fall muss ich eine URL verwenden, die spezielle Zeichen wie é oder ' enthält. Hier ist mein Stück Code:Uri-Klasse konvertiert nicht korrekt das spezielle char

string NomArret = "Université"; 

uri = new Uri("http://localhost/getdata.php?aarret=" + NomArret); 

Aber diese Rückkehr 0 Ergebnisse. Ich gedebuggt und ich bemerkt, dass uri kodieren diese URL wie:

http://84.75.112.69/getdata.php?aarret=Universit%C3%A9 

Und er wandelt die Zeichen é zu %C3%A9. Auf dieser Website (www.degraeve.com/reference/urlencoding.php) habe ich gesehen, dass die é Char zu %E9 konvertieren kann.

Wenn ich versuche, manuell diese Codierung:

http://84.75.112.69/getdata.php?aarret=Universit%E9 

Es funktioniert! Wie kann ich meinen Code anpassen, um das Sonderzeichen korrekt konvertieren zu können?

+0

'% C3% A9' ist hex, also könnten Sie das Zeichen in hex konvertieren. –

Antwort

0

Können Sie Uri.EscapeDataString verwenden? (Ich bin kein C# Entwickler, also kann ich es nicht verifizieren)

+0

Dies liefert keine Antwort auf die Frage. Sobald Sie genügend [Reputation] (http://stackoverflow.com/help/whats-reputation) haben, können Sie [jeden Beitrag kommentieren] (http://stackoverflow.com/help/privileges/comment); stattdessen [geben Sie Antworten, die keine Klärung durch den Fragesteller erfordern] (http://meta.stackexchange.com/questions/214173/why-doe-i-need-50-reputation-to-comment-what-can- i-do-stattdessen). - [Aus Bewertung] (/ review/low-quality-posts/13415261) –

+1

In der Tat ist es eine Antwort, weil es die erforderliche Funktion sein kann. Aber eine korrekte Antwort wäre "Versuch, URI.EscapeDataString zu verwenden". Entschuldigung für diesen Fehler: / –

Verwandte Themen