using System; class MainClass { public static void Main() { try { MainClass MyObject = new MainClass(); IFormattable Formattable; Formattable = (IFormattable)MyObject; // wait for user to acknowledge the results Console.WriteLine("Hit Enter to terminate..."); Console.Read(); } catch(InvalidCastException) { Console.WriteLine("MyObject does not implement the IFormattable interface."); } } }
Development Class
NullReferenceException Exception
using System; class MyClass { public int Value; } class MainClass { public static void Main() { try { MyClass MyObject = new MyClass(); MyObject = null; MyObject.Value = 123; // wait for user to acknowledge the results Console.WriteLine("Hit Enter to terminate..."); Console.Read(); } catch(NullReferenceException) { Console.WriteLine("Cannot reference a null object."); // wait for user to acknowledge the results Console.Read(); } } }
StackOverflowException Exception
using System; class MainClass { public static void Main() { try { Recursive(); } catch(StackOverflowException) { Console.WriteLine("The CLR is out of stack space."); } } public static void Recursive() { Recursive(); } }
OutOfMemoryException Exception
using System; class MainClass { public static void Main() { int [] LargeArray; try { LargeArray = new int [2000000000]; } catch(OutOfMemoryException) { Console.WriteLine("The CLR is out of memory."); } } }
Throw and Catch an IO exception because the file zxcvb.data doesn't exist
using System.IO; public class IoError { public static void Main() { StreamReader f; try{ f = new StreamReader("DoesNotExist.data"); }catch(IOException e) { System.Console.WriteLine(e); } f = new StreamReader("DoesNotExist.data"); } }
Convert byte array to Int32
using System; using System.IO; class MainClass { public static byte[] DecimalToByteArray (decimal src){ using (MemoryStream stream = new MemoryStream()) { using (BinaryWriter writer = new BinaryWriter(stream)){ writer.Write(src); return stream.ToArray(); } } } public static decimal ByteArrayToDecimal (byte[] src){ using (MemoryStream stream = new MemoryStream(src)){ using (BinaryReader reader = new BinaryReader(stream)){ return reader.ReadDecimal(); } } } public static void Main() { byte[] b = null; b = BitConverter.GetBytes(true); Console.WriteLine(BitConverter.ToString(b)); Console.WriteLine(BitConverter.ToBoolean(b, 0)); b = BitConverter.GetBytes(3678); Console.WriteLine(BitConverter.ToString(b)); Console.WriteLine(BitConverter.ToInt32(b, 0)); b = DecimalToByteArray(285998345545.563846696m); Console.WriteLine(BitConverter.ToString(b)); Console.WriteLine(ByteArrayToDecimal(b)); } }
Convert byte array to String with BitConverter
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)); } } }