vb net 排除两个日期时间之间的时间段

主意

您好,我是 VB 网络中的日期时间新手,我正在尝试计算产品中某些操作的时间。例如:

starTtime="01.12.2018 07:00" 
endTime ="01.12.2018 15:00"

我有两个没有工作的例子:

Pause1Start="01.12.2018 10:00" Pause1Stop="01.12.2018 10:30"

Pause2Start="01.12.2018 14:00" Pause2Stop="01.12.2018 14:30"

如何计算使用时间?这个例子并不总是,有必要检查两个日期时间之间是否包含暂停时间,或者是否有工作日结束、周末等......所以操作可以在一天内开始并在一天后完成。

我需要知道如何处理这个?

谢谢

米哈乌·图尔钦

试试这个代码。我建议您定义暂停开始和结束的列表,然后遍历它们,检查特定的暂停是否在工作时间内,并将该时间(以秒为单位)添加到变量保持总秒数中:

Sub Main()
    Dim startTime = New DateTime(2018, 11, 1, 7, 0, 0)
    Dim endTime = New DateTime(2018, 11, 1, 17, 0, 0)

    Dim pauseStarts = New List(Of DateTime)
    pauseStarts.Add(New DateTime(2018, 11, 1, 16, 0, 0))
    pauseStarts.Add(New DateTime(2018, 11, 1, 10, 0, 0))
    Dim pauseEnds = New List(Of DateTime)
    ' Add respective pause endings
    pauseEnds.Add(New DateTime(2018, 11, 1, 18, 0, 0))
    pauseEnds.Add(New DateTime(2018, 11, 1, 11, 30, 0))

    Dim pauseSeconds As Long = 0
    For i = 0 To pauseStarts.Count - 1
        If pauseStarts(i) < endTime AndAlso pauseEnds(i) > startTime Then
            ' get the minimum from two times
            Dim starting = If(startTime > pauseStarts(i), startTime, pauseStarts(i))
            ' get maximum from two times
            Dim ending = If(endTime < pauseEnds(i), endTime, pauseEnds(i))
            ' add seconds during pause
            pauseSeconds += (ending - starting).TotalSeconds
        End If
    Next
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

vb.net减去两个Excel单元格的日期和时间

来自分类Dev

在vb.net中获取两个时间跨度之间的时差

来自分类Dev

VB.net算出两个日期之间的天数

来自分类Dev

vb .net之间的时间间隔

来自分类Dev

在vb.net中验证两个日期之间的天数

来自分类Dev

使用VB.net/MS Access查询两个日期之间的记录

来自分类Dev

Vb.Net在两个日期之间进行MS搜索

来自分类Dev

两个日期之间的星期五数(vb.net)

来自分类Dev

Vb.net中的日期时间错误

来自分类Dev

SQL日期时间溢出。Vb.net

来自分类Dev

VB.Net在线时间

来自分类Dev

如何获取两个给定日期之间的星期数及其各自的日期(VB.NET)

来自分类Dev

如何计算两个时间段之间的时间?

来自分类Dev

如何在 vb.net WPF 和 MySQL 中使用 DataGrid 获取/过滤两个日期之间的数据?

来自分类Dev

VB.NET和VB之间的区别

来自分类Dev

在C#.net中创建两个任务,并在特定时间段后关闭其中一个

来自分类Dev

在C#.net中创建两个任务,并在特定时间段后关闭其中一个

来自分类Dev

在VB .NET应用程序中转换日期时间

来自分类Dev

在Vb.net中转换日期时间格式

来自分类Dev

在VB.NET中将日期和时间联接到DateTime

来自分类Dev

VB.NET没有日期时间吗?dataReader

来自分类Dev

vb.net和MSSQL的日期时间问题

来自分类Dev

在Vb.net中转换日期时间格式

来自分类Dev

在VB .NET应用程序中转换日期时间

来自分类Dev

vb.net和MSSQL的日期时间问题

来自分类Dev

vb.net日期值将转换为时间

来自分类Dev

VB.net GROUP 按日期忽略时间

来自分类Dev

从 VB.NET 错误插入 SQL 日期时间

来自分类Dev

VB.net 创建日期 Killswitch(比较两个日期)

Related 相关文章

热门标签

归档