View
1
Download
0
Category
Preview:
Citation preview
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 1
MANEJO DE CADENASEN C#
2
1
2
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 2
CADENAS (STRINGS)
�Secuencia de caracteres que se puedeconsiderar como un arreglo de caracteres
�Ejemplo:
string strEscuela = “Tec Laredo”;
3
CADENAS VERBATIM� Una cadena puede contener secuencias de escape:
string x = “\x0041BCDE\a”;
Console.WriteLine(x); // Imprime ABCDE
• A una cadena Verbatim se le antepone un @
string y = @“\x0041BCDE\a”;
Console.WriteLine(y);
// Imprime \x0041BCDE\a
4
3
4
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 3
ASIGNACIÓN DE CADENAS CON EL OPERADOR =� En C# se pueden asignar cadenas con el operador = (lo
que no se podía con los arreglos de caracteres en C++, solamente con los apuntadores de caracteres)
string s1 = “Tec Laredo”, s2;
s2 = s1;
Console.WriteLine(s2); // Tec Laredo
5
COMPARACIÓN DE CADENAS CON EL OPERADOR ==
� En C# se pueden comparar cadenas con el operador == (lo que no se podía con los arreglos de caracteres en C++, solamente con los apuntadores de caracteres)
string s1 = “Tec Laredo”, s2=“Tec Laredo”;
if(s1 == s2)
Console.WriteLine(“Son iguales”);
else
Console.WriteLine(“No son iguales”);
6
5
6
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 4
COMPARACIÓN DE CADENAS CON EL MÉTODO Equals()
�Método Equals()
string s1 = “Tec”, s2=“Tec”;
if( s1.Equals(s2) )
Console.WriteLine(“Son iguales”);
else
Console.WriteLine(“No son iguales”);
7
COMPARACIÓN DE CADENAS CON EL MÉTODO CompareTo()
� Método CompareTo()string Cadena1, Cadena2;int Resultado;
Resultado = Cadena1.CompareTo(Cadena2);
switch (Resultado){
case -1: Console.Write(Cadena1 + " < " + Cadena2); break;
case 0 : Console.Write(Cadena1 + " = " + Cadena2); break;
case 1: Console.Write(Cadena1 + " > " + Cadena2); break;}
8
7
8
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 5
EDICIÓN DE CADENAS
�Las cadenas pueden ser tratadas como un arreglo de caracteres
string s1 = “Tec”;
char primer_caracter;
primer_caracter = s1[0]; // ‘T’
Console.WriteLine(primer_caracter);
9
SUBCADENAS
�Método Substring()
string s1 = “Tec”, s2;
s2 = s1.Subtring(1,2);
Console.WriteLine(s2); // s2 = “ec”
10
9
10
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 6
LONGITUD DE CADENAS
�Propiedad Length
string s = “Tec Laredo”;
Console.WriteLine(“Longitud=“+s.Length);
// Longitud = 10
�El espacio en blanco cuenta como un caracter
11
MAYÚSCULAS Y MINÚSCULAS
�Métodos ToUpper() y ToLower()
string s = “Tec Laredo”;
s = s.ToUpper();
Console.WriteLine(s); // TEC LAREDO
s = s.ToLower();
Console.WriteLine(s); // tec laredo
12
11
12
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 7
ELIMINACIÓN DE ESPACIOS DE CADENAS (TRIMMING)
�Método Trim()
�Elimina los espacios en blanco al principio y al final
string s = “ Tec Laredo ”;
s = s.Trim();
Console.WriteLine(s); //Tec Laredo
13
CONCATENACIÓN DE CADENAS
�Agregar una cadena al final de otra
string s1 = “Tec”, s2 = “Laredo”;
s1 = s1 + s2;
Console.WriteLine(s1);// TecLaredo
14
13
14
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 8
MÉTODOS DE CADENAS�string strEscuela = “Tec Laredo”;
�Buscar una cadena
if(strEscuela.Contains(“Tec”))
�Conocer la cadena con la que empieza
if(strEscuela.StartsWith(“T”))
�Conocer la cadena con la que termina
if(strEscuela.EndsWith(“.”))
15
GENERAR CADENAS ALEATORIAS
string strCadena = Guid.NewGuid().ToString().Substring(0,Longitud);
16
La variable Longitud
representa el tamaño de la cadena
15
16
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 9
CARACTERES UNICODE
�El Unicode proporciona un estándar de codificación de caracteres y símbolos a nivelmundial
� Incluye el conjunto de caracteres ASCII
�En ASCII, cada caracter requiere 1 byte (quecontiene 0’s y 1’s) y se representa con un número entre 0 y 255; por lo tanto, sólo tiene256 caracteres (representa una parte del conjunto de símbolos a nivel mundial)
17
CARACTERES UNICODE (cont)�El Estándar Unicode codifica todos los
caracteres y símbolos en un rango de 0 a 10FFFF hexadecimal
�Consultar www.unicode.org
�Existen 3 formatos:
�UTF-8 (8 bits)
�UTF-16 (16 bits)
�UTF-32 (32 bits)
�Visual Studio .NET usa UTF-16 pararepresentar todos los caracteres
18
17
18
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 10
USO DE CARACTERES UNICODE� Usar \u y el código hexadecimal del símbolo
�Console.Write(“\u00D1”); // Ñ
�Console.Write(“\u00E1”); // á
�Console.Write(“\u00C1”); // Á
�Console.Write(“\u00DF”); // ß
�Console.Write(“\u00BE”); // ¾
�Console.Write(“\u2557”); // ╗
�Console.Write(“\u263A”); // ☺
�Console.Write(“\u2660”); // ♠
19
FORMATO NUMÉRICO� { N, M : Formato }
� N = Número de parámetro
� M = Ancho y justificación del dato
� Formato = Especifica cómo se mostrará el datonumérico
20
Formato Descripción
C Moneda (currency)
D Decimal entero
E Exponencial (notación científica)
F Flotante
N Despliega el número con comas separadoras
X Hexadecimal
P Porcentaje
19
20
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 11
FORMATO NUMÉRICO
21
Sentencia Salida
Console.WriteLine(“ {0:C} ”,12345.6789); $12,345.68
Console.WriteLine(“ {0:D5} “, 88); 00088
Console.WriteLine(“ {0:E} “, 888.8); 8.888000E+002
Console.WriteLine(“ {0:F3} “, 888.8888); 888.889
Console.WriteLine(“ {0,8:F2} “, 145.3); 145.30
Console.WriteLine(“ {0:N} “, 8888888.8); 8,888,888.80
Console.WriteLine(“ {0:X4} “, 88); 0058
Console.WriteLine(“ {0:P} “, 0.12345); 12.35%
JUSTIFICACIÓN
� Justificar a la izquierda con 10 espacios� Console.WriteLine( “{ 0 , -10 }”, x);
� Justificar a la derecha con 10 espacios� Console.WriteLine( “{ 0 , 10 }”, x);
22
21
22
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 12
ALINEACIÓN DE DATOS� Implementar el método PadRight
Console.Write(unEmpleado.Numero.ToString().PadRight(6,‘ ‘)+
" "+unEmpleado.Nombre.PadRight(30, ‘ ‘)+
" "+unEmpleado.Sueldo.ToString("C"));
23
COLOCAR EL CURSOR
� Para colocar el cursor en la pantalla utilice el método SetCursorPosition( )
Console.SetCursorPosition(columna, renglon);
� Ejemplo
Console.SetCursorPosition(40, 12);
Console.Write(“Hola”);
24
23
24
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 13
PROPIEDADES Y MÉTODOS DE LA CONSOLA
�Cambiar el color del fondoConsole.BackgroundColor = ConsoleColor.Red;
Console.Clear();
�Cambiar el color del textoConsole.ForegroundColor = ConsoleColor.Yellow;
Console.Write(“Tec Laredo”);
�Desaparecer el cursorConsole.CursorVisible = false;
25
PROPIEDADES Y MÉTODOS DE LA CONSOLA
�Cambiar la etiqueta de la ventana de la consola
Console.Title = “Tec Laredo”;
�Emitir sonidoConsole.Beep(frecuencia, duracion);
�Aparecer el cursor
Console.CursorVisible = true;
26
25
26
Fundamentos de Programación
Ing. Bruno López Takeyas, M.C.http://www.itnuevolaredo.edu.mx/Takeyas 14
Otros títulos del autor
http://www.itnuevolaredo.edu.mx/Takeyas/Libro
Bruno López Takeyasbruno.lt@nlaredo.tecnm.mx
27
Recommended