के लिए बेस 64 के लिए guid प्रश्न: क्या ऐसा करने का एक बेहतर तरीका है?यूआरएल
VB.Net
Function GuidToBase64(ByVal guid As Guid) As String
Return Convert.ToBase64String(guid.ToByteArray).Replace("/", "-").Replace("+", "_").Replace("=", "")
End Function
Function Base64ToGuid(ByVal base64 As String) As Guid
Dim guid As Guid
base64 = base64.Replace("-", "/").Replace("_", "+") & "=="
Try
guid = New Guid(Convert.FromBase64String(base64))
Catch ex As Exception
Throw New Exception("Bad Base64 conversion to GUID", ex)
End Try
Return guid
End Function
सी #
public string GuidToBase64(Guid guid)
{
return Convert.ToBase64String(guid.ToByteArray()).Replace("/", "-").Replace("+", "_").Replace("=", "");
}
public Guid Base64ToGuid(string base64)
{
Guid guid = default(Guid);
base64 = base64.Replace("-", "/").Replace("_", "+") + "==";
try {
guid = new Guid(Convert.FromBase64String(base64));
}
catch (Exception ex) {
throw new Exception("Bad Base64 conversion to GUID", ex);
}
return guid;
}
बेस 64 एन्कोडिंग के मानक विशेष वर्णों को हटाने का कोई विशेष कारण? – Hemant
क्या कोई विशेष कारण है कि आपको इसे एन्कोड करने की आवश्यकता है? GUID में वर्णों में से कोई भी वर्ण URL या विशेषताओं के लिए एन्कोडिंग की आवश्यकता नहीं है। – blowdart
@ हेमेंट, क्योंकि यूआरएल के लिए, + और/और = जीईटी, @ ब्लौडार्ट में अच्छी तरह से काम नहीं करता है, यूआरएल छोटे – Fredou