我有一个字符串,看起来很不错,如下所示:
TimeString = "2011.01.02 22:06:52.091"现在我想将它转换为双精度,并将其保存为双精度数。我是用c#做的,怎么做呢?
真的在网上找不到答案。
编辑:
时间是一种金融货币报价的时间戳:
计时竞价
2011.01.02 22:06:52.091 1.5000 1.5001
这是外汇报价时间的时间戳。我喜欢这样: xxxxxxxxxxxxxxxx.ooo,
发布于 2012-02-02 10:39:33
var span = DateTime.ParseExact(TimeString,
"yyyy.MM.dd HH:mm:ss.fff",
CultureInfo.InvariantCulture) -
new DateTime(2011, 01, 02, 22, 06, 52, 0);
double d = span.TotalMilliseconds/1000.0;把它变成了替身
发布于 2012-02-02 10:40:50
有几种选择,但如果不知道使用场景,就不可能知道什么是“最好的”。
如果您可以将其存储为long (Int64),则可以使用DateTime.Ticks。
另一种选择是使用DateTime.ToOADate,它将DateTime转换为双精度型的OLE自动化日期。
要转换回,可以使用constructor that takes Ticks或DateTime.FromOADate。
发布于 2012-02-02 10:47:33
我相信这就是你想要做的:
static void Main(string[] args)
{
String timeString = "2011.01.02 22:06:52.091";
string format = "yyyy.MM.dd HH:mm:ss.fff";
double date = DateTime.ParseExact(timeString, format, CultureInfo.InvariantCulture).ToOADate();
}https://stackoverflow.com/questions/9106415
复制相似问题