fork download
  1. using System;
  2. using System.Collections.Generic;
  3.  
  4. namespace Articulos.Cap04.Excepciones.Parte2
  5. {
  6. public sealed class UsoTryGetValue
  7. {
  8. public static void Main()
  9. {
  10. // Creación del diccionario:
  11. Dictionary<string, string> abrirCon = new Dictionary<string, string>();
  12.  
  13. // Agregación de extensiones:
  14. abrirCon.Add (".html", "Internet Explorer");
  15. abrirCon.Add (".cs", "Notepad++ Portable (PortableApps Launcher)");
  16. abrirCon.Add (".mp3", "Winamp");
  17. abrirCon.Add (".camrec", "Camtasia Studio");
  18. abrirCon.Add (".jpg", "Pain.NET");
  19.  
  20. // Uso del patrón TryXXX:
  21. Console.WriteLine ("\nUso del patrón TryXXX:");
  22. string aplicacion = String.Empty;
  23.  
  24. if (abrirCon.TryGetValue (".tif", out aplicacion))
  25. {
  26. Console.WriteLine ("\nPara la extensión `.tif` la aplicación usada es {0}.", aplicacion);
  27. }
  28. else
  29. {
  30. Console.WriteLine ("\nLa extensión `.tif` no tiene una aplicación asociada.\n");
  31. }
  32.  
  33. // Uso del modo de acceso basado en indizador ('indexer').
  34. // Este modo genera una excepción si la aplicación a la
  35. // extensión pasada como índice no existe:
  36. Console.WriteLine ("\nUso del modo de acceso basado en indizador:");
  37. try
  38. {
  39. Console.WriteLine ("\nPara la extensión `.tif` la aplicación usada es {0}.", abrirCon[".tif"]);
  40. }
  41. catch (KeyNotFoundException)
  42. {
  43. Console.WriteLine ("\nLa extensión `.tif` no tiene una aplicación asociada.\n");
  44. }
  45. }
  46. }
  47. }
Success #stdin #stdout 0.03s 33912KB
stdin
Standard input is empty
stdout
Uso del patrón TryXXX:

La extensión `.tif` no tiene una aplicación asociada.


Uso del modo de acceso basado en indizador:

La extensión `.tif` no tiene una aplicación asociada.