Curso Completo Base de datos

diferencia entre dos horas

Colapsar
X
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar todos
nuevos mensajes

  • diferencia entre dos horas

    Hola de nuevo a todos.
    Como digo en el título del post, estoy tratando de calcular la diferencia de tiempo entre dos horas, para lo cual utilizo dos
    dateTimePicker llamados dtInicial y dtFinal y un TextBox llamado Duración en el que quiero presentar el cálculo.
    Utilizo el Siguiente código:
    Código:
      
    Dim cadena As String
    cadena = String.Format("{0:t0}", (dtFinal.Value - dtInicial.Value))
    txtDuracion.Text = cadena.Substring(0, 5)
    pero me da el siguiente error System.FormatException: 'La cadena de entrada no tiene el formato correcto.'
    en la línea:
    cadena = String.Format("{0:t0}", (dtFinal.Value - dtInicial.Value))
    Me estoy volviendo tarumba y no consigo ver cómo arreglarlo.
    ¿Alguien me puede echar una mano?
    Muchas gracias por vuestra inestimable ayuda.

  • #2
    Yo nunca me he aclarado con los epecificadores de formato estilo C.
    Prueba el siguiente código
    Código:
            Dim x As TimeSpan
            'Con la sentencia:
            'x = dtFinal.Value - dtInicial.Value
            'el resultado salía un minuto menos del resultado esperado
            x = CDate(dtFinal.Value.ToString("HH:mm")) - CDate(dtInicial.Value.ToString("HH:mm"))
    
            Dim d As New Date(x.Ticks)
            txtDuracion.Text = d.ToString("HH:mm")
    Una visita a las Normas del foro nunca viene mal

    Comentario


    • #3
      Muchas gracias de nuevo Gilman.
      Lo acabo de probar y funciona perfectamente.
      Lo curioso del caso, es que el código que envié en otras aplicaciones me ha funcionado, pero en lo sucesivo voy a utilizar este sistema.
      Muchísimas gracias otra vez.

      Comentario

      Trabajando...
      X