将日期转换为数字的Vb.NET方法

5

我有这段VB .NET代码

dim date_e As DateTime
date_e = New DateTime(CLng(Convert.ToDouble("635434240520170000")))

结果是:
12.08.2014 07:07:32

现在我的问题是如何反向编码以获取我自己输入的特定日期和时间的数字: 比方说。
22.09.2014 07:07:32

感谢您!

https://dev59.com/eGMm5IYBdhLWcg3whfWe - hgulyan
1
不要将字符串转换为双精度浮点数,再转换为长整型。直接使用 Convert.ToInt64("635434240520170000") 将其转换为长整型。 - the_lotus
1个回答

4

DateTime构造函数需要一个Long参数,表示公历0001年1月1日00:00:00.000以来的滴答数。

您只需先将字符串解析为Date,然后就可以使用它的Ticks属性

Dim dt = Date.Parse("22.09.2014 07:07:32") ' presumes that this is the correct format
Dim ticks As Long = dt.Ticks

如果输入的日期字符串格式与您当前的文化不同,您可以使用正确的文化和 Date.Parse 进行解析:
dt = Date.Parse("22.09.2014 07:07:32", New CultureInfo("de-DE"))

如果你不了解该文化,但只了解格式,可以使用Date.ParseExact

dt = Date.ParseExact("22.09.2014 07:07:32", "dd.MM.yyyy HH:mm:ss", CultureInfo.InvariantCulture)

谢谢!这就是我需要的。祝你有美好的一天! - Gherghina Ionut-Valentin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接