Задача должна быть WebUtility.UrlDecode (String) текст:
Преобразует строку, которая была закодирована для передачи в URL, в декодированную строку.
Если такие символы, как пробелы и знаки препинания, передаются в потоке HTTP, они могут быть неправильно истолкованы на принимающей стороне. Кодировка URL преобразует символы, которые не разрешены в URL, в эквивалентные шестнадцатеричные escape-последовательности. Метод UrlEncode создает строку в кодировке URL.
Декодирование URL заменяет шестнадцатеричные escape-последовательности соответствующими символами ASCII. Например, при внедрении в блок текста в кодировке URL escape-последовательности %3c
и %3e
декодируются в символы <
и >
.
Образец следующим образом:
using System.Net;
Console.WriteLine("Encode:" + WebUtility.UrlEncode("?"));
// out ==> %F0%9F%98%82
Console.WriteLine("Decode:" + WebUtility.UrlDecode("%F0%9F%98%82"));
// out ==> ?
Console.WriteLine("Encode:" + WebUtility.UrlEncode("this is a text message"));
// out ==> this+is+a+text+message
Console.WriteLine("Decode:" + WebUtility.UrlDecode("this+is+a+text+message"));
// out ==> this is a text message
Решение:
Не напрямую CrossClipboard.Current.SetText(message);
Попробуйте с CrossClipboard.Current.SetText( WebUtility.UrlDecode(message));