|
UrlEncode и браузер кодируют строки по-разному
| ☑ |
0
DirecTwiX
18.02.15
✎
00:24
|
Есть строка "абв". Браузер преобразует её к
%E0%E1%E2
а UrlEncode/EscapeUriString к
%D0%B0%D0%B1%D0%B2
Как получить первый вариант? C#
|
|
1
Asmody
18.02.15
✎
00:29
|
(0) вторая в юникоде
|
|
2
DirecTwiX
18.02.15
✎
00:44
|
(1) Да это вроде понятно. Как её в ASCII переделать?
Encoding.ASCII.GetBytes("абв")[0].ToString("X") выдаёт "3F" вместо "E0"
|
|
3
Asmody
18.02.15
✎
00:49
|
(2) почему ASCII? win-1251 наверно
|
|
4
DirecTwiX
18.02.15
✎
01:08
|
(3) Наверно) Спасибо :)
private static string UTFtoWin(string s)
{
string res = "";
Encoding enc = Encoding.GetEncoding("windows-1251");
byte[] byteString = enc.GetBytes(s);
foreach (byte b in byteString)
{
res += "%" + b.ToString("X");
}
return res;
}
|
|
5
DirecTwiX
18.02.15
✎
01:13
|
private static string UTFtoWin(string s)
{
string res = "";
Encoding enc = Encoding.GetEncoding("windows-1251");
byte[] byteString = enc.GetBytes(s);
foreach (byte b in byteString)
{
res += "%" + b.ToString("X");
}
return res;
}
|
|
6
DirecTwiX
18.02.15
✎
01:14
|
Я пытался.. :@
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший