(SOLUCIONADO) String.ToTitleCase (REAL TitleCase)

Iniciado por Eleкtro, 19 Diciembre 2012, 06:36 AM

0 Miembros y 1 Visitante están viendo este tema.

Eleкtro

¿Como puedo convertir un string a TitleCase? ya que TextInfo.ToTitleCase en realidad convierte a Word-Case  :-X

Esto No Es Lo Que Quiero
Esto si es lo que quiero

Puedo hacerlo de manera rebuscada primero obteniendo y modificando el primer caracter de la variable a UpperCase y luego anexar el resto del string... ¿Pero no hay una manera más...nativa?








Novlucker

Hasta donde se no hay una manera nativa de hacerlo :-\ En este caso lo mejor es crearse un snippet para tener a mano, e invocarlo desde un método extensor.

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

seba123neo

proba esto:

Código (vbnet) [Seleccionar]
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim vTexto As String = "esto es una prueba"
        MsgBox(Char.ToUpper(vTexto(0)) + vTexto.Substring(1))
    End Sub
End Class


la otra forma es hacer split a un array y solo poner la mayuscula en el primer elemento.

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

Eleкtro

Cita de: seba123neo en 19 Diciembre 2012, 15:14 PM
proba esto:

Más o menos hice un code parecido, el tuyo está mucho más simplificado que el mío, gracias!








Eleкtro

Al code de Seba123neo le faltaba un pequeño detalle (Modificar el resto del string a lowercase) de lo contrario el ejemplo de arriba sólamente sirve con strings en lowercase xD

Aquí dejo el code para renombrar archivos a Title-Case:

Código (vbnet) [Seleccionar]
    Private Function RenameToTitleCase(ByVal File As FileInfo)
        Return Char.ToUpper(File.Name.Substring(0, File.Name.IndexOf(File.Extension))(0)) + StrConv(File.Name.Substring(0, File.Name.IndexOf(File.Extension)).Substring(1), VbStrConv.Lowercase)
    End Function


Saludos.