sčítanie a odčítanie časových intervalov   zodpovězená otázka

VB.NET

Dobry večer!

Tak skusim ešte raz popísať problem ktory asi bol popísany dosť nezrozumitelne.

Potrebujem ščítať časove intervali napr. 12:30 + 25:30 + 10:50 = 48:50 čiže vysledok by mal byť 40hodín a 50 minut. Format času by mal byť HH:MM

Dakujem

nahlásit spamnahlásit spam 0 odpovědětodpovědět
Dim t1 As TimeSpan = New TimeSpan(12, 30, 0)
Dim t2 As TimeSpan = New TimeSpan(25, 30, 0)
Dim t3 As TimeSpan = New TimeSpan(10, 50, 0)

Dim t As TimeSpan = t1.Add(t2).Add(t3)
Console.WriteLine(String.Format("{0}:{1}", CType(t.TotalHours,Integer), t.Minutes))
nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Diky toto by mohlo fungovať a ešte prosím o radu ako nahradiť tie časy napriklad s textboxami.

Dik P.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Do textboxů ty časy dostáváte jak? V jakém jsou formátu?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Na to si musíte napsat vlastní parsovací funkci. Pokud bude čas zadáván např. (natvrdo) ve formátu HH:MM mohlo by to být nějak takto:

Private Shared Function ParseTime(value As String) As TimeSpan
	'value musí být ve tvaru HH:MM
	If String.IsNullOrEmpty(value) Then
		Throw New FormatException("Invalid value.")
	End If

	value = value.Trim()

	Dim parts As String() = input.Split(":")
	If parts.Length <> 2 Then
		Throw New FormatException("Invalid value.")
	End If

	Dim hours As Integer
	Dim minutes As Integer
	If Not Int32.TryParse(parts(0), hours) OrElse Not Int32.TryParse(parts(1), minutes) Then
		Throw New FormatException("Invalid value.")
	End If

	Return New TimeSpan(hours, minutes, 0)
End Function

Příště prosím uveďte přesněji, že vám nešlo o vlastní sčítání časů (hodnot typu TimeSpan), ale o pársování zadávaného času (jako string) v nějakém formátu na typ TimeSpan.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dakujem za rady už som sa z toho vysomaril.

Dik ešte raz!

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback