İki saat arası tüm saatleri listelemek ister misiniz?
TimeSpan
nesnelerini ve bunları toplamak için HashSet(Of TimeSpan)
nesnelerini ayıklamak için dize yöntemlerini kullanabilirsiniz.
Dim text = "7:00-8:00/9:00-10:00/3:00-4:00"
Dim tsStart As TimeSpan
Dim tsEnd As TimeSpan
Dim timespans = From token In text.Split("/"c)
Select startEnd = token.Split("-"c)
Where startEnd.Length = 2 _
AndAlso TimeSpan.TryParse(startEnd(0), tsStart) _
AndAlso TimeSpan.TryParse(startEnd(1), tsEnd)
Select New With {.Start = tsStart, .End = tsEnd}
Dim timeSet As New HashSet(Of TimeSpan)
For Each span In timespans
Dim between = span.End - span.Start
For h As Int32 = 0 To between.Hours
timeSet.Add(span.Start.Add(TimeSpan.FromHours(h)))
Next
Next
For Each ts In timeSet
listBox.Items.Add(ts.ToString())
Next
Bu aynı zamanda giriş doğrular ve eğer istenirse TimeSpan
yerine sokulmasıyla sipariş sağlar: ayrıştırmak ve başı ve sonu arasındaki ayıklamak için TimeSpan
yöntemlerini kullanın. Çoğaltmaya izin verilmesi gerekiyorsa HashSet(Of T)
'u List(Of T)
ile değiştirin.
Büyük harf kullanımı [SHOUTING] (http://jaysondbradley.com/wp-content/uploads/2014/01/angry.jpg) bize –
Üzgünüm arkadaşım. Sadece stresliyim ve hayattaki kuralları ve davranışlarımı unuttum. Üzgünüz – Ymca