/// <summary> /// Encodes a string into a byte array using a specific encoding style. /// </summary> /// <param name="input">The data to convert into an array.</param> /// <param name="style">The encoding style to use.</param> public static byte[] GetBytes(string input, Styles.EncodingStyle style = Styles.EncodingStyle.Default) { byte[] output = null; switch (style) { case Styles.EncodingStyle.Default: output = Encoding.Default.GetBytes(input); break; case Styles.EncodingStyle.ASCII: output = Encoding.ASCII.GetBytes(input); break; case Styles.EncodingStyle.UTF7: output = Encoding.UTF7.GetBytes(input); break; case Styles.EncodingStyle.UTF8: output = Encoding.UTF8.GetBytes(input); break; case Styles.EncodingStyle.UTF32: output = Encoding.UTF32.GetBytes(input); break; case Styles.EncodingStyle.Unicode: output = Encoding.Unicode.GetBytes(input); break; case Styles.EncodingStyle.BigEndianUnicode: output = Encoding.BigEndianUnicode.GetBytes(input); break; } return(output); }
/// <summary> /// Converts a byte array into a string using a specific encoding style. /// </summary> /// <param name="input">The data to convert into a string.</param> /// <param name="style">The encoding style to use.</param> public static string GetString(byte[] input, Styles.EncodingStyle style = Styles.EncodingStyle.Default) { StringBuilder sb = new StringBuilder(); switch (style) { case Styles.EncodingStyle.Default: sb.Append(Encoding.Default.GetString(input)); break; case Styles.EncodingStyle.ASCII: sb.Append(Encoding.ASCII.GetString(input)); break; case Styles.EncodingStyle.UTF7: sb.Append(Encoding.UTF7.GetString(input)); break; case Styles.EncodingStyle.UTF8: sb.Append(Encoding.UTF8.GetString(input)); break; case Styles.EncodingStyle.UTF32: sb.Append(Encoding.UTF32.GetString(input)); break; case Styles.EncodingStyle.Unicode: sb.Append(Encoding.Unicode.GetString(input)); break; case Styles.EncodingStyle.BigEndianUnicode: sb.Append(Encoding.BigEndianUnicode.GetString(input)); break; } return(sb.ToString()); }