using System; public class MainClass { public static void Main() { byte[] utf8Bytes = System.Text.Encoding.UTF8.GetBytes("0123456789"); byte[] utf16Bytes = System.Text.Encoding.Unicode.GetBytes("0123456789"); byte[] utf32Bytes = System.Text.Encoding.UTF32.GetBytes("0123456789"); string original1 = System.Text.Encoding.UTF8.GetString(utf8Bytes); string original2 = System.Text.Encoding.Unicode.GetString(utf16Bytes); string original3 = System.Text.Encoding.UTF32.GetString(utf32Bytes); Console.WriteLine(original1); Console.WriteLine(original2); Console.WriteLine(original3); } }
Author: coder
Encoding.URF8/Unicode/UTF32/.GetBytes
using System; public class MainClass { public static void Main() { byte[] utf8Bytes = System.Text.Encoding.UTF8.GetBytes("0123456789"); byte[] utf16Bytes = System.Text.Encoding.Unicode.GetBytes("0123456789"); byte[] utf32Bytes = System.Text.Encoding.UTF32.GetBytes("0123456789"); Console.WriteLine(utf8Bytes.Length); Console.WriteLine(utf16Bytes.Length); Console.WriteLine(utf32Bytes.Length); } }
Encoding.BigEndianUnicode.GetString
using System; using System.Text; class StringEncodingApp { static void Main(string[] args) { byte[] bb = new byte[] { 0, 72, 0, 101, 0, 108, 0, 108, 0, 111 }; string t = Encoding.BigEndianUnicode.GetString(bb); Console.WriteLine(t); } }
Encoding.ASCII.GetString
using System; using System.Text; class StringEncodingApp { static void Main(string[] args) { byte[] ba = new byte[] { 72, 101, 108, 108, 111 }; string s = Encoding.ASCII.GetString(ba); Console.WriteLine(s); } }
Encoding: Unicode ASCII GetBytes GetString
using System; using System.IO; using System.Text; class MainClass { public static void Main() { using (StreamWriter output = new StreamWriter("output.txt")) { string srcString = "Area = u03A0r^2"; output.WriteLine("Source Text : " + srcString); byte[] utf16String = Encoding.Unicode.GetBytes(srcString); output.WriteLine("UTF-16 Bytes: {0}",BitConverter.ToString(utf16String)); byte[] utf8String = Encoding.UTF8.GetBytes(srcString); byte[] asciiString = Encoding.ASCII.GetBytes(srcString); output.WriteLine("UTF-8 Bytes: {0}", BitConverter.ToString(utf8String)); output.WriteLine("ASCII Bytes: {0}", BitConverter.ToString(asciiString)); output.WriteLine("UTF-8 Text : {0}",Encoding.UTF8.GetString(utf8String)); output.WriteLine("ASCII Text : {0}",Encoding.ASCII.GetString(asciiString)); } } }
Encoding in action
using System; using System.IO; using System.Text; class Test { public static void Main() { using (StreamWriter output = new StreamWriter("practice.txt")) { // Create and write a string containing the symbol for Pi. string srcString = "Area = u03A0r^2"; // Convert the UTF-16 encoded source string to UTF-8 and ASCII. byte[] utf8String = Encoding.UTF8.GetBytes(srcString); byte[] asciiString = Encoding.ASCII.GetBytes(srcString); // Write the UTF-8 and ASCII encoded byte arrays. output.WriteLine("UTF-8 Bytes: {0}", BitConverter.ToString(utf8String)); output.WriteLine("ASCII Bytes: {0}", BitConverter.ToString(asciiString)); // Convert UTF-8 and ASCII encoded bytes back to UTF-16 encoded // string and write. output.WriteLine("UTF-8 Text : {0}", Encoding.UTF8.GetString(utf8String)); output.WriteLine("ASCII Text : {0}", Encoding.ASCII.GetString(asciiString)); Console.WriteLine(Encoding.UTF8.GetString(utf8String)); Console.WriteLine(Encoding.ASCII.GetString(asciiString)); } } }
Convert Byte array to Base64 Char Array
using System; using System.IO; class Test { public static void Main() { // The size of the char[] must // be at least 4/3 the size of the source byte[] and must be // divisible by 4. byte[] data = { 0x01, 0x02, 0x5A, 0xFF, 0x0, 0xF0, 0x4D, 0x62, 0x78, 0xD2, 0xC5, 0xA1, 0x5A, 0xD6, 0x0C, 0xA9, 0xA6, 0x63, 0x3D, 0xC2, 0xD5, 0x0F, 0xCC, 0x01, 0xF2, 0x0C}; char[] base64data = new char[(int)(Math.Ceiling((double)data.Length / 3) * 4)]; Console.WriteLine(" Byte array encoding/decoding"); Convert.ToBase64CharArray(data, 0, data.Length, base64data, 0); Console.WriteLine(new String(base64data)); } }