0
我试着通过StreamReader的NTP阅读,我发现很难从ph.pool.ntp.org获取时,它给了我一个outofboundsexception当我试图在定时器运行NTP阅读VB.NET
继承人我的代码
Public Function GetNISTTime(ByVal host As String) As DateTime
Dim timeStr As String = ""
Try
Dim reader As New StreamReader(New TcpClient(host, 13).GetStream)
timeStr = reader.ReadToEnd()
Console.WriteLine(timeStr.ToString)
reader.Close()
Catch ex As SocketException
Label1.Text = ex.Message
Catch ex As Exception
Label1.Text = ex.Message
End Try
Dim jd As Integer = Integer.Parse(timeStr.Substring(1, 5))
Dim yr As Integer = Integer.Parse(timeStr.Substring(7, 2))
Dim mo As Integer = Integer.Parse(timeStr.Substring(10, 2))
Dim dy As Integer = Integer.Parse(timeStr.Substring(13, 2))
Dim hr As Integer = Integer.Parse(timeStr.Substring(16, 2))
Dim mm As Integer = Integer.Parse(timeStr.Substring(19, 2))
Dim sc As Integer = Integer.Parse(timeStr.Substring(22, 2))
Dim Temp As Integer = CInt(AscW(timeStr(7)))
Return New DateTime(yr + 2000, mo, dy, hr, mm, sc)
End Function
和主机名被装载在定时器
Label1.Text = GetNISTTime("ph.pool.ntp.org ").ToString
,它是通过在形式负载的timer.start()开始。
向我们展示字符串返回的是什么。 – OneFineDay
@onefineday它不会返回一个字符串,因为它引发了一个抛出的异常:'System.ArgumentOutOfRangeException –
WHere?什么线? – OneFineDay