Formato de milisegundos de Vb.net

Tengo esta cadena:

00:00:59,950


digamos que quiero:
00: 00: 59,950 + 100

entonces la cadena se ve así:
00: 01: 00,050
hay una función que pueda hacerlo?

preguntado el 12 de junio de 12 a las 18:06

2 Respuestas

Puede utilizar el Espacio de tiempo escriba para manejar esto:

Dim ci = CultureInfo.InvariantCulture
Dim original As TimeSpan = TimeSpan.ParseExact("00:00:59,950", "hh\:mm\:ss\,fff", ci)
Dim difference As TimeSpan = TimeSpan.FromMilliseconds(100)

Dim final = original + difference

Dim output as String = final.ToString("hh\:mm\:ss\,fff", ci)

Respondido el 12 de junio de 12 a las 19:06

hay una excepción en esta línea: Dim original As TimeSpan = TimeSpan.Parse("00:00:59,950") - roger janet

@rogerjanety Es posible que deba usar ParseExact y especificar un formato: un segundo, edición. - Reed Copsey

hay dos excepciones: 'ParseExact' no es miembro de 'System.TimeSpan'. y el segundo: demasiados argumentos para 'Caracteres de propiedad predeterminados públicos de solo lectura (índice como entero) como carácter'. - roger janet

@rogerjanety Esto es para .NET 4: ¿qué versión de .NET está usando? - Reed Copsey

Prueba esto:

    Dim dateFormat As String = "hh:mm:ss.fffffff" 
    Dim date1 As Date = #00:00:59,950"
    date1.AddMilliseconds(100)

ACTUALIZACIÓN:

Debo haber estado más cansado de lo que me di cuenta ayer, me disculpo por eso... Esto debería funcionar mejor:

    Dim sTime As String = "00:00:59.950"
    Dim dOffset As DateTimeOffset = DateTimeOffset.Parse(sTime)
    dOffset = dOffset.AddMilliseconds(100)

    Dim sDisplayTime As String = dOffset.ToString("HH:mm:ss.fff tt")

Allí obtendrá los milisegundos en el formato que indicó en su pregunta.

Respondido el 13 de junio de 12 a las 21:06

'date1' no está declarado. Puede ser inaccesible debido a su nivel de protección. hay muchos errores en este código - roger janet

Dim dateFormat As String esta línea es innecesaria porque no la usamos en el código: roger janet

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.