|
|
#1 |
|
Hyperactive Member
Join Date: Mar 03
Location: Munich - Germany
Posts: 476
![]() |
C#-Base64 Encoding and Decoding
To encode a string
Code:
public string base64Encode(string data)
{
try
{
byte[] encData_byte = new byte[data.Length];
encData_byte = System.Text.Encoding.UTF8.GetBytes(data);
string encodedData = Convert.ToBase64String(encData_byte);
return encodedData;
}
catch(Exception e)
{
throw new Exception("Error in base64Encode" + e.Message);
}
}
Code:
public string base64Decode(string data)
{
try
{
System.Text.UTF8Encoding encoder = new System.Text.UTF8Encoding();
System.Text.Decoder utf8Decode = encoder.GetDecoder();
byte[] todecode_byte = Convert.FromBase64String(data);
int charCount = utf8Decode.GetCharCount(todecode_byte, 0, todecode_byte.Length);
char[] decoded_char = new char[charCount];
utf8Decode.GetChars(todecode_byte, 0, todecode_byte.Length, decoded_char, 0);
string result = new String(decoded_char);
return result;
}
catch(Exception e)
{
throw new Exception("Error in base64Decode" + e.Message);
}
}
Stephan
__________________
Keep Smiling - even if its hard ![]() Frankie Says Relax, wossname Says Yeah! wossname:--Currently I'm wearing a gimp suit and a parachute. C# - Base64 Blog |
|
|
|
|
|
#2 |
|
New Member
Join Date: Aug 05
Posts: 2
![]() |
Re: C#-Base64 Encoding and Decoding
No offense, but there's certainly a more elegant solution. I'm not sure why you're catching a specific exception just to throw a more general one either.
Code:
public string Encode(string str)
{
byte[] encbuff = System.Text.Encoding.UTF8.GetBytes(str);
return Convert.ToBase64String(encbuff);
}
public string Decode(string str)
{
byte[] decbuff = Convert.FromBase64String(str);
return System.Text.Encoding.UTF8.GetString(decbuff);
}
|
|
|
|
|
|
#3 |
|
New Member
Join Date: Aug 05
Posts: 2
![]() |
Re: C#-Base64 Encoding and Decoding
Pardon me. I now understand why you were throwing the exception. When an exception occurs within a function, it does not pass it out to the containing function that made the call. You have to throw it back yourself. Nicely done.
|
|
|
|
|
|
#4 |
|
Frenzied Member
Join Date: Jan 02
Location: Joburg, RSA
Posts: 1,722
![]() ![]() ![]() |
Re: C#-Base64 Encoding and Decoding
The following is a better way of bubbling exceptions. It's not entirely necessary in this situation though
Code:
try
{
// Code here
}
catch (Exception ex)
{
throw new Exception("Error in base64Decode: " + e.Message, ex);
}
|
|
|
|
|
|
#5 | |
|
New Member
Join Date: Mar 07
Posts: 1
![]() |
Quote:
|
|
|
|
|
|
|
#6 | |
|
New Member
Join Date: Aug 07
Posts: 1
![]() |
Re: C#-Base64 Encoding and Decoding
Quote:
|
|
|
|
|
![]() |
|
||||||
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|