ইউআরএলগুলিতে ব্যবহারের জন্য বর্ণমালাটি অদলবদল করা সাধারণ বিষয় , যাতে কোনও% - এনকোডিং প্রয়োজন হয় না; শুধুমাত্র 65 অক্ষরের 3 সমস্যাযুক্ত রয়েছে - +
, /
এবং =
। সর্বাধিক সাধারণ প্রতিস্থাপনের -
স্থানে +
এবং _
জায়গায় /
। প্যাডিংয়ের জন্য: কেবল এটি (দ্য =
) সরান ; আপনি পারেন অনুমান প্যাডিং প্রয়োজন পরিমাণ। অন্য প্রান্তে: কেবল প্রক্রিয়াটি বিপরীত করুন:
string returnValue = System.Convert.ToBase64String(toEncodeAsBytes)
.TrimEnd(padding).Replace('+', '-').Replace('/', '_');
সঙ্গে:
static readonly char[] padding = { '=' };
এবং বিপরীত:
string incoming = returnValue
.Replace('_', '/').Replace('-', '+');
switch(returnValue.Length % 4) {
case 2: incoming += "=="; break;
case 3: incoming += "="; break;
}
byte[] bytes = Convert.FromBase64String(incoming);
string originalText = Encoding.ASCII.GetString(bytes);
তবে মজার প্রশ্নটি হ'ল: "সাধারণ কোডেক লাইব্রেরি" ব্যবহার করা একই পন্থাটি কী? এটি অবশ্যই পরীক্ষার জন্য যুক্তিসঙ্গত প্রথম জিনিস হবে - এটি একটি দুর্দান্ত সাধারণ পদ্ধতি।
Url.Encode
স্ট্রিং-এ ব্যবহার করতে পারবেন নাBASE64
?