В C#:
static public string EncodeTo64(string toEncode) {
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
string returnValue = System.Convert.ToBase64String(toEncodeAsBytes);
return returnValue;
}
static public string DecodeFrom64(string encodedData) {
byte[] encodedDataAsBytes = System.Convert.FromBase64String(encodedData);
string returnValue = System.Text.ASCIIEncoding.ASCII.GetString(encodedDataAsBytes);
return returnValue;
}
MessageBox.Show(DecodeFrom64("aHR0cDovL3d3dy5pbWRiLmNvbS90aXRsZS90dDA0MDE3Mjk="));
Использование System.Text.UTF8Encoding.UTF8.GetBytes(...)
если строка toEncode
содержит символы за пределами ASCII. Обратите внимание, что в этом случае любая сторона, которая расшифровывает URL-адрес, должна иметь возможность правильно обрабатывать эти символы.
Также обратите внимание на the case из =
, +
и /
упоминает Дэвид Хардин, чтобы увидеть, если какой-либо из упомянутых проблем относятся к вам. Или просто используйте Дэвида answer.
JQuery: Google 'Jquery base64 закодировать' (сайт plugins.jquery.com, кажется, отсутствует в данный момент, так что я не могу проверить это точно)
В сети всего два кодировки: ASCII и UTF-8. Использование чего-либо еще - это безумие или прикладная археология, в зависимости от намерения. Используйте UTF-8 и получите надпись. –