Trucos C#

download Trucos C#

of 15

Transcript of Trucos C#

  • 7/25/2019 Trucos C#

    1/15

    Cmo puedo impedir que el usuario introduzca letras y signos de puntuacin o caracteres

    especiales en un cuadro de texto? tengo una aplicacin que estoy desarrollando en Visual C# .Net

    y quiero poner un cuadro de texto (TextBox para que el usuario de la aplicacin de !acturacin slo

    introduzca n"meros y no permitirle introducr letras cmo puedo acer esto?

    $uedes a%adir el siguiente cdigo al e&ento 'ey$ress del TextBox

    pri&ate &oid txtCodigo)a*ricante+'ey$ress(o*,ect sender-'ey$ress&ent/rgs e

    0

    11$ara o*ligar a que slo se introduzcan n"meros

    i! (Car.2s3igit(e.'eyCar

    0

    e.4andled 5 !alse6

    7

    else

    i! (Car.2sControl(e.'eyCar 11permitir teclas de control como retroceso

    0

    e.4andled 5 !alse6

    7else

    0

    11el resto de teclas pulsadas se desacti&an

    e.4andled 5 true6

    7

    7

    8i quieres- por e,emplo- permitir tam*i9n el espacio

    i! (Car.2s3igit(e.'eyCar

    0

    e.4andled 5 !alse67

    else

    i! (Car.2sControl(e.'eyCar

    0

    e.4andled 5 !alse6

    7

    else

    i! (Car.2s8eparator(e.'eyCar

    0

    e.4andled 5 !alse6

    7

    else0

    e.4andled 5 true6

    7

    Truco: Pasar entre TextBox con la tecla ENTER VB y CSharp Windows Fors

  • 7/25/2019 Trucos C#

    2/15

    /lgo mas sencillo que los otros trucos que e estado pu*licando.. este por lo menos podremos

    simular el T/B:;/3indos cosa que mucas &eces no

    encontra*amos la !orma de pasar a la siguiente ca,a de texto o siguiente control con la tecla

    NT=.

    Como en los anteriores este de*e ser codi!icado en el &ento 'ey$ress del TextBox

    @pri&ate&oid Txt$rue*aNT=+'ey$ress(o*,ectsender- 'ey$ress&ent/rgs e

    A0

    i!(e.'eyCar 55 (car('eys.nter

    0

    D e.4andled 5 true6

    E 8end'eys.8end(F0T/B7F6

    G 7

    H7

    Buscando cadenas dentro de cadenas en C!

    $ues ace tiempo que no escri*o nada en el *log- so*re todo porque e estado muy ocupado en

    otras cosas y por razones de la &ida ya no programo muco con C#- pero quiero compartir con

    ustedes algunos trucos a la ora de *uscar y comparar strings con C#.

    Cuando digo cadenas- por supuesto que me re!iero a cadenas de caracteres- esto de traducir la

    programacin al espa%ol es un dolor de ca*eza- por e,emplo- como traducimos array? &ector o

    arreglo? pero *ueno- ese es otro tema- &ayamos a lo que importa

    Veamos los "todos de la clase Strin# en C!para la *"squeda de cadenas

    @. 2ndex

    instancia

    A. ;ast2ndex

  • 7/25/2019 Trucos C#

    3/15

    intlast 5str.;ast2ndex

    //Tomemos ahora el texto que hay entre la primera y la ltima ocurrencia de "silly"stringstrA 5str.8u*string(!irst- last K!irst6Console.>rite;ine(F*eteen to LsillyL ords L0M7LF- strA6

    Nota 4ace un tiempo escri*I un post so*re algunos e,ercicios resueltos con string- y ay uno con8u*string(

    -% &sando StartsWith*+ y EndsWith*+:

    *ooltest@ 5str.8tarts>it(Fa sillyF6//retorna falso, en 3 vers por queConsole.>rite;ine(Fstarts it La sillyL? 0M7F- test@6*ooltestA 5str.nds>it(F.F6Console.>rite;ine(Fends it L.L? 0M7F- testA6

    .% /ue pasa si no nos iportan ay0sculas y in0sculas1

    Cuando estamos *uscando un texto- C# por de!ecto es Case 8ensiti&e (sensi*le a las may"sculas

    y min"sculas- es por eso que en el e,emplo A- str.tarts!ith#a sil ly$%retorna !alse. Como podemosacer que ignore si el texto que *uscamos estJ en may"sculas o no? $asando como segundo

    parJmetro alg"n &alor del enumtrin&'omparison,modi!iquemos un poco el e,emplo A

    *ooltestA 5str.8tarts>it(Fa sillyF- 8ystem.8tringComparison.rite;ine(Fstarts it La sillyL? 0M7 (ignoring caseF- testA6//ahora si retorna true

    Nota 8tringComparison tam*ien se lo podemos pasar a los otros m9todos mencionados.

    2% 3a#aos un Contains 4ue sea Case Sensiti5e

    6% &n tru4uito:

    strings 5Florem ipsum dolorF6*oolis2psum 5s.Contains(FipsumF6

    es lo mismo que

    *oolis2psum 5Florem ipsum dolorF.Contains(FipsumF6//el operador ne( est impl)cito

    Como siempre- cualquier pregunta que tengas- en los comentarios

    http://www.puntopeek.com/codigos-c/ejercicios-resueltos-string-en-c-sharphttp://msdn.microsoft.com/en-us/library/system.stringcomparison.aspxhttp://msdn.microsoft.com/en-us/library/system.stringcomparison.aspxhttp://www.puntopeek.com/codigos-c/metodos-extensores-en-c-sharp-net/http://www.puntopeek.com/codigos-c/ejercicios-resueltos-string-en-c-sharphttp://msdn.microsoft.com/en-us/library/system.stringcomparison.aspxhttp://www.puntopeek.com/codigos-c/metodos-extensores-en-c-sharp-net/
  • 7/25/2019 Trucos C#

    4/15

    E7ercicios resueltos de strin# en C!

    /quI les pongo unos cuantos e,ercicios resueltos y cdigos escritos en C# relacionados con elmane,o de strings (cadenas que seguro te ayudarJ de mucas !ormas a me,orar el uso de estepopular tipo de dato. $ero primero &eamos cuales son los m9todos y propiedades de esta clase8tring. 8"todos y propiedades )undaentalespu*lic char this+int index -&et 3e&uel&e elcaracter de la posicin especi!icada de la cadena.pu*lic int 0en&th -&et3e&uel&e la longitud de lacadena (cantidad de caracteres que contiene empezando a contar desde @.pu*lic strin& 1nsertintstart1ndex, strin& value% 2nserta la cadena especi!icada a partir de la posicin dada.pu*lic strin&2emoveint start1ndex,int count%limina el n"mero especi!icado de caracteres a partir de laposicin dada.pu*lic strin&+ plitparams char+ separator%Busca las su*cadenas contenidasdentro de la cadena- delimitJndolas por los separadores que se le especi!iquen- y las copia a unarreglo de cadenas.pu*lic strin& u*strin&int start1ndex%3e&uel&e la su*cadena contenida apartir de la posicin especi!icada.pu*lic strin& u*strin&int index, int len&th%3e&uel&e lasu*cadena que empieza a partir del Indice especI!ico- y tiene la longitud indicada. E7erciciosresueltos@K 2mplemente un m9todo que dado un string s cualquiera- de&uel&a un nue&o string quese el in&erso de s. (e, entrada PpuntopeeQR6 salida PQeepotnupRpu*licstring2n&ierte(stringa0

    string* 5FF6 !or(inti 5M6i Slt6a.;engt6i * 5aUi*6 return*67

    AK 2mplemente una !uncin que dado un string- una posicin de comienzo y una cantidad decaracteres- de&uel&a una su*cadena (su*string de una cadena dada a partir de los parJmetrosdados (e, entrada PpuntopeeQR- pos5 A- cant5 6 salida PntopR.

    pu*licstring8u*8tring(stringa- intpos- intcant0 stringpedazo 5FF6

    i!((pos cantSgt6a.;engt tronexception(FF6 else 0 !or(int, 5pos6, Slt6cant pos 6, pedazo 5aU,6 returnpedazo6 77

    K 2mplemente un m9todo =eplace- que reci*a un string s- y dos caracteres old y ne. 3ica!uncin de*e reemplazar todas las ocurrencias del caracter old por el carJcter ne- y de&ol&er unnue&o string con dica caracterIstica. (e, entrada PprogramacionR- old5 WaX- ne5XiX6 salidaPprogrimicionR

    pu*licstring=eplace (stringa- carold- carne0 stringresult 5FF6 !or(inti 5M6i Slt6a.;engt6i 0 i!(aUi55old result 5ne6 else result 5aUi6

    http://www.puntopeek.com/codigos-c/ejercicios-resueltos-string-en-c-sharp/http://www.puntopeek.com/category/programacion/http://www.puntopeek.com/codigos-c/ejercicios-resueltos-string-en-c-sharp/http://www.puntopeek.com/category/programacion/
  • 7/25/2019 Trucos C#

    5/15

    7 returnresult67

    YK 2mplemente un m9todo Com*inar- que dado un string s- de&uel&a todas las com*inacionesposi*les que se pueden !ormar a partir de los caracteres de s. ste m9todo es un poco mJscomplicado- pero muy "til y prJctico. $ara esto usaremos recursi&idad- para ir generando todas las

    posi*les com*inaciones. (e, entrada PoyR6 salida PoyR- PyoR- PoyR- PoyR- PyoR- PyoR

    pu*lic&oidCom*ina(strings0 *oolUmarcas 5ne*oolUs.;engt6 Com*ina(s- FF- marcas67&oidCom*ina(stringoriginal- stringcom*inado- *oolUmarcas0 i!(original.;engt55com*inado.;engt Console.>rite;ine(com*inado6 !or(inti 5M6i Slt6marcas.;engt6i 0

    i!(OmarcasUi 0 marcasUi5true6 Com*ina(original- com*inado originalUi- marcas6 marcasUi5!alse6 7 77

    8i tienes alguna duda so*re los cdigos anteriores- o quieres agregar algo- en los comentarios.Bueno- asta aquI esta entrega de e,ercicios resueltos. spero que te sir&a- y si quieres practicar-guIate por estos e,emplos y trata de implementar otros m9todos relacionados con string- como son@K liminar un carJcter dado de una cadena.

    pu*licstringliminar(strings- carc.

    AK Ver si un string es palIndromo no- o sea- se escri*e igual al dereco que al re&9s.

    pu*lic *ools$alindromo(strings

    K Ver cuJl es el letra que mJs se repite en una cadena.

    pu*liccaras$opular(strings

    s muy aconse,a*le que traten de acer estos e,ercicios solos- auxiliJndose de los e,emplosanteriores. 3e todos modos pondr9 la respuesta de estos e,ercicios en una prxima entrega la

    semana que &iene.

    =ecortar y quitar caracteres de cadenas en .NT )rameorQ

    8i &a a analizar una !rase en las pala*ras que la !orman- el resultado pueden ser pala*ras con

    espacios en *lanco delante y detrJs. n este caso- puede usar uno de los m9todos de recorte de la

    clase Syste%Strin#para quitar espacios u otros caracteres de una posicin especi!icada de la

    cadena. n la ta*la siguiente se descri*en los m9todos de recorte disponi*les.

  • 7/25/2019 Trucos C#

    6/15

    No9re del

    "todo&tilice

    8tring.Trim Zuita del comienzo y del !inal de una cadena los espacios en *lanco o los caracteres

    caracteres.

    8tring.Trimnd Zuita los caracteres especi!icados de una matriz de caracteres del !inal de una caden

    8tring.Trim8tart Zuita los caracteres especi!icados de una matriz de caracteres del comienzo de una c

    8tring.=emo&e Zuita un n"mero especi!icado de caracteres de una posicin de Indice especi!icada d

    9todos que de&uel&en cadenas

    n la ta*la siguiente se enumeran algunos m9todos "tiles que de&uel&en nue&os o*,etos de

    cadena.

    No9re del "todo &tilice

    8tring.)ormat Compila una cadena con !ormato a partir de un con,unto de o*,etos de entrada.

    8tring.Concat Compila cadenas a partir de dos o mJs cadenas.

    8tring.[oin Compila una nue&a cadena com*inando una matriz de cadenas.

    https://msdn.microsoft.com/es-es/library/system.string.trim(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.trimend(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.trimstart(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.remove(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.string.format(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.concat(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.join(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.trim(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.trimend(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.trimstart(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.remove(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.string.format(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.concat(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.join(v=vs.110).aspx
  • 7/25/2019 Trucos C#

    7/15

    8tring.2nsert Compila una nue&a cadena mediante la insercin de una cadena en el Indice especi

    8tring.CopyTo Copia los caracteres especi!icados de una cadena en la posicin especi!icada de un

    Forato

    l m9todo Strin#%Foratse puede usar para crear cadenas con !ormato y concatenar cadenas

    que representan &arios o*,etos. ste m9todo con&ierte automJticamente en cadena cualquier

    o*,eto que se pase. $or e,emplo- si la aplicacin de*e mostrar al usuario un &alor 'nt.-y un

    &alor ateTie- es muy sencillo construir una cadena que represente estos &alores con el

    m9todo Forat. $ara o*tener mJs in!ormacin so*re las con&enciones de !ormato utilizadas con

    este m9todo- &ea la seccin )ormato compuesto.

    Cadenas de relleno en .NT )rameorQ

    :tilice uno de los siguientes m9todos 8tringpara crear una nue&a cadena !ormada por una cadena

    original que se rellena con caracteres iniciales o !inales asta alcanzar una longitud total

    especi!icada. l carJcter de relleno puede ser un espacio o un carJcter especi!icado y- por lo tanto-

    la cadena parece estar alineada a la dereca o a la izquierda.

    No9re del "todo &tilice

    8tring.$ad;e!t =ellena una cadena con caracteres iniciales asta alcanzar la longitud total es

    8tring.$ad=igt =ellena una cadena con caracteres !inales asta alcanzar la longitud total esp

    Comparar cadenas en .NT )rameorQ

    .NT )rameorQ proporciona &arios m9todos para comparar los &alores de cadenas. n la ta*la

    siguiente se enumeran y descri*en los m9todos de comparacin de &alores.

    No9re del "todo &tilice

    8tring.Compare Compara los &alores de dos cadenas. 3e&uel&e un &alor entero.

    https://msdn.microsoft.com/es-es/library/system.string.insert(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.copyto(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/txafckwd(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.padleft(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.padright(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.compare(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.insert(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.copyto(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/txafckwd(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.padleft(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.padright(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.compare(v=vs.110).aspx
  • 7/25/2019 Trucos C#

    8/15

    8tring.Compareit 3etermina si una cadena comienza con la cadena que se pasa. 3e&uel&e un &alor

    8tring.nds>it 3etermina si una cadena termina con la cadena que se pasa. 3e&uel&e un &alor *o

    8tring.quals 3etermina si dos cadenas son iguales. 3e&uel&e un &alor *ooleano.

    8tring.2ndex

    examina. 3e&uel&e un &alor entero.

    8tring.;ast2ndex

    &alor entero.

    Coparar

    l m9todo Strin#%Copareproporciona una manera de comparar exausti&amente el o*,eto de

    cadena actual con otra cadena u o*,eto. n este m9todo se tiene en cuenta la re!erencia

    cultural. sta !uncin se puede usar para comparar dos cadenas o su*cadenas de dos

    cadenas. /demJs- se proporcionan so*recargas para tener en cuenta o no las di!erencias de

    re!erencia cultural y de may"sculas y min"sculas. n la ta*la siguiente se muestran los tres &alores

    enteros que este m9todo puede de&ol&er.

    Tipo de 5alor Condition

    https://msdn.microsoft.com/es-es/library/system.string.compareordinal(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.compareordinal(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.compareto(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.startswith(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.endswith(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.equals(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.indexof(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.lastindexof(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.string.compareordinal(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.compareordinal(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.compareto(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.startswith(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.endswith(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.equals(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.indexof(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.lastindexof(v=vs.110).aspxhttp://void%280%29/
  • 7/25/2019 Trucos C#

    9/15

    :n entero negati&o stres menor que str4.

    M stres igual que str4.

    :n entero positi&o.

    < *ien

    @

    sta instancia es mayor que value.

    < *ien

    valuees una re!erencia nula (Nothin#en Visua

    'portante

    ;a !inalidad principal del m9todo Comparees que se utilice para la ordenacin o clasi!icacin de cadenas. l

    para compro*ar la igualdad (es decir- para *uscar explIcitamente un &alor de&uelto que sea M sin tener en cu

    mayor que otra. n su lugar- para determinar si dos cadenas son iguales- use el m9todo 8tring.quals(8tring

    Cam*iar may"sculas y min"sculas en .NT )rameorQ

    8i se escri*e una aplicacin que acepta la entrada de in!ormacin por parte del usuario- nunca se

    puede estar seguro de si se utilizarJn may"sculas o min"sculas para introducir los datos. $uesto

    que los m9todos que comparan cadenas y caracteres distinguen may"sculas y min"sculas- las

    may"sculas y min"sculas de las cadenas que escri*en los usuarios se de*en con&ertir para

    compararlas con los &alores constantes. Cam*iar las may"sculas y min"sculas de una cadena es

    muy sencillo. n la ta*la siguiente se descri*en los dos m9todos existentes para cam*iar

    may"sculas y min"sculas. Cada m9todo proporciona una so*recarga que acepta una re!erencia

    cultural.

    No9re del "todo &tilice

    8tring.To:pper Con&ierte todos los caracteres de una cadena en may"sculas.

    https://msdn.microsoft.com/es-es/library/system.string.compare(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/t4411bks(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.toupper(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.compare(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/t4411bks(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.toupper(v=vs.110).aspx
  • 7/25/2019 Trucos C#

    10/15

    8tring.To;oer Con&ierte todos los caracteres de una cadena en min"sculas.

    :tilizar la clase 8tringBuilder en .NT )rameorQ

    l o*,eto 8tringes inmuta*le. Cada &ez que se usa uno de los m9todos de la clase 8ystem.8tring-

    se crea un nue&o o*,eto de cadena en la memoria- que necesita una nue&a asignacin de espacio

    para ese o*,eto nue&o. n las situaciones en que sea necesario realizar modi!icaciones repetidas

    en una cadena- la so*recarga asociada a la creacin de un nue&o o*,eto 8tringpuede disminuir el

    rendimiento. ;a clase 8ystem.Text.8tringBuilderse puede utilizar para modi!icar una cadena sin

    crear un nue&o o*,eto. $or e,emplo- el uso de la clase 8tringBuilderpuede me,orar el rendimiento al

    concatenar mucas cadenas en un *ucle.

    Crear instancias de un o97eto Strin#Builder

    8e puede crear una nue&a instancia de la clase8tringBuilderinicializando la &aria*le con uno de

    los m9todos de constructor so*recargados- como se muestra en el e,emplo siguiente.

    C#

    8tringBuilder y8tringBuilder 5 ne8tringBuilder(F4ello >orldOF6

    Con)i#urar la capacidad y la lon#itud

    /unque 8tringBuilderes un o*,eto dinJmico que permite expandir el n"mero de caracteres de la

    cadena que encapsula- se puede especi!icar un &alor para el n"mero mJximo de caracteres quepuede contener. ste &alor se conoce como la capacidad del o*,eto y no se de*e con!undir con la

    longitud de la cadena que contiene el o*,eto8tringBuilderactual. $or e,emplo- podrIa crear una

    nue&a instancia de la clase 8tringBuildercon la cadena F4olaF que tiene una longitud de D- y podrIa

    especi!icar que el o*,eto tiene una capacidad mJxima de AD. /l modi!icar 8tringBuilder- no reasigna

    el tama%o para sI mismo asta que se alcance la capacidad. Cuando sucede esto- el nue&o

    espacio se asigna automJticamente y se do*la la capacidad. ;a capacidad de la

    clase 8tringBuilderse puede especi!icar con uno de los constructores so*recargados. n el

    e,emplo siguiente se especi!ica que el o*,etoy8tringBuilderse puede expandir asta un mJximo

    de AD espacios.

    C#

    8tringBuilder y8tringBuilder 5 ne8tringBuilder(F4ello >orldOF- AD6

    /demJs- se puede utilizar la propiedad de lectura y escritura Capacitypara esta*lecer la longitud

    mJxima del o*,eto. n el e,emplo siguiente se utiliza la propiedad Capacitypara de!inir la longitud

    mJxima del o*,eto.

    https://msdn.microsoft.com/es-es/library/system.string.tolower(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.capacity(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.capacity(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string.tolower(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.string(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.capacity(v=vs.110).aspx
  • 7/25/2019 Trucos C#

    11/15

    C#

    y8tringBuilder.Capacity 5 AD6

    l m9todo nsureCapacityse puede utilizar para compro*ar la capacidad actual

    de Strin#Builder. 8i la capacidad es mayor que el &alor que se pasa- no se ace ning"n cam*io6

    sin em*argo- si es menor que el &alor que se pasa- la capacidad actual se cam*ia para que

    coincida con dico &alor.

    Tam*i9n se puede &er y esta*lecer la propiedad ;engt.8i se esta*lece la propiedad ,en#then un

    &alor mayor que el de la propiedad Capacity- la propiedad Capacityse cam*ia automJticamente al

    mismo &alor de la propiedad ,en#th. 8i se esta*lece la propiedad ,en#tha un &alor menor que la

    longitud de la cadena actual de Strin#Builder- se acorta la cadena.

    8odi)icar la cadena Strin#Builder

    n la ta*la siguiente se enumeran los m9todos que se pueden utilizar para modi!icar el contenido

    de Strin#Builder.

    No9re del "todo &tilice

    8tringBuilder./ppend /grega in!ormacin al !inal de la Strin#Builderactual.

    8tringBuilder./ppend)ormat =eemplaza un especi!icador de !ormato que se pasa en una cadena con

    8tringBuilder.2nsert 2nserta una cadena u o*,eto en el Indice especi!icado de la Strin#Build

    8tringBuilder.=emo&e Zuita el n"mero de caracteres especi!icado de la Strin#Builderactual.

    8tringBuilder.=eplace =eemplaza un carJcter especi!icado en el Indice especi!icado.

    https://msdn.microsoft.com/es-es/library/system.text.stringbuilder.ensurecapacity(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.ensurecapacity(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.length(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.length(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.text.stringbuilder.append(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.appendformat(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.insert(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.remove(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.replace(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.ensurecapacity(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.length(v=vs.110).aspxhttp://void%280%29/https://msdn.microsoft.com/es-es/library/system.text.stringbuilder.append(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.appendformat(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.insert(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.remove(v=vs.110).aspxhttps://msdn.microsoft.com/es-es/library/system.text.stringbuilder.replace(v=vs.110).aspx
  • 7/25/2019 Trucos C#

    12/15

    %Net Crear una ll en C! *paso a paso+

    Posted by:lvgstark

    Pues eso, que hoy vamos a ver como se crea una Dll desde cero y como la utilizamos en un proyecto.

    /ue es un ,,1

    Un DLL o Dynamic Link Library (Biblioteca de Vinculo Dinamica en espaol) es un archivo que contiene

    funciones o clases u otros recursos que pueden ser utilizados por una aplilcacion externa al DLL. Como lo dice

    su nombre, una aplicacion lo que hace es hacer un vinculo a la biblioteca y de esta forma puede hacer uso de

    funciones, procedimientos o metodos que se encuentren en esta biblioteca. Para darles un ejemplo, yo puedo

    tener un DLL con funciones matematicas, y en vez de escribirlas otra vez en el codigo de mi aplicacion,

    simplemente hago un vinculo al DLL que contiene las funciones matematicas y asi las puedo utilizar desde mi

    aplicacion. La ventaja de esto es que se recicla codigo, y el codigo es mas ordenado tambien, sin embargo asi

    tambien tiene desventajas.

    Pasos para crear y usar la Dll

    Paso 1: Creacin de la Dll

    El primer paso que realizaremos ser crear un nuevo proyecto del tipo Class Library, que en este caso he

    bautizado como KLSTools.

    En l, crearemos una clase que contenga una operacin que sume diferentes valores que pasaremos como

    referencias.

    Creacin de la Dll

    Contenido de la Dll

    Clic para ver Texto Plano

    http://lluisvera.com/author/lvgstark/http://lluisvera.com/2011/06/net-crear-una-dll-en-c-paso-a-paso/http://lluisvera.com/author/lvgstark/http://lluisvera.com/2011/06/net-crear-una-dll-en-c-paso-a-paso/
  • 7/25/2019 Trucos C#

    13/15

    C#:

    1. usingSystem;

    2. usingSystem.Collections.Generic;

    3. usingSystem.Linq;

    4. usingSystem.Text;5.

    6. namespaceLSTools

    !. "

    #. pu$licclass%peraciones

    &. "

    1'. pu$licintSumar(int)* int+,

    11. "

    12. int-alor ) / +;

    13. return-alor;

    14. 0

    15. 0

    16. 0

    Definicin y estructura de la Dll

    Paso 2: Creacin de nuestro proyecto independiente

    Lo siguiente ser crear un proyecto independiente, pero en el que necesitaremos utilizar la Dll que hemos

    creado. En este caso hemos creado un proyecto bsico del tipo Windows Forms, y que consistir en un botn

    que al pulsarlo, nos mostrar un mensaje con la operacin que le pasemos.

    Paso 3: Referenciar nuestra Dll

    Para poder utilizar nuestra Dll, er preciso referenciarla, por lo que iremos a Referencias y aadiremos una

    nueva Referencia (que no ser System, ni Com), si no que iremos a buscarla mediante el browser.

  • 7/25/2019 Trucos C#

    14/15

    Paso 4: Referenciar la Dll en el proyecto e instanciar la clase que utilizaremos.

    Una vez aadida la referencia, lo siguiente ser llamar al espacio de nombres de la Dll, mediante el comando

    using y posteriormente, instanciar la clase que utiliaremos mediante el constructor.

    Y ya estar operativa nuestra aplicacin referenciando

    una Dll que hemos creado.

    Referenciacin de la Dll e instancia de la clase

    Clic para ver Texto Plano

    C#:

    1. usingSystem;

    2. usingSystem.Collections.Generic;3. usingSystem.Componentoel;

    4. usingSystem.Linq;

    5. usingSystem.Text;

    6. usingSystem.inos.orms;

    !. //Referencio a mi DLL

    #. usingLSTools;

    &.

    http://lluisvera.com/2011/06/net-crear-una-dll-en-c-paso-a-paso/http://lluisvera.com/2011/06/net-crear-una-dll-en-c-paso-a-paso/
  • 7/25/2019 Trucos C#

    15/15

    1'. namespaceinosorms)pplication1

    11. "

    12. pu$licpartial classorm1 orm

    13. "

    14. pu$licorm1(,

    15. "

    16. 7nitiali8eComponent(,;

    1!. 0

    1#.

    1&. pri-ate-oi$utton19Clic:(o$ectsener*