我正在尝试将这段Delphi代码转换为C#:
Date1.Text:=FormatDateTime2('YYYY,JJJ/HHNNSS)
其中包含年份,朱利安日(每年的1月1日为1),以及小时/分钟/秒。
今天的一个例子是2016,054/090722
。
FormatDateTime2
是一个非常非常长的函数,在delphi代码中没有注释和无用的变量名,我宁愿不花很长时间来尝试转换它。
通常我会这样:
<TextBox Name="Date1" Text="{Binding Source={x:Static System:DateTime.Now}, Mode=OneWay, StringFormat='yyyy,JJJ/hhmmss'}" />
但是JJJ
天部分当然不起作用,因为它不是正常的System.DateTime的一部分。有一种简单的方法吗?
答案 0 :(得分:1)
你不能手动格式化吗? DateTime
有一个DayOfYear
属性:
DateTime now = DateTime.Now;
Date1.Text = String.Format("{0},{1}/{2}",
now.Year,
now.DayOfYear.ToString("d3"),
now.ToString("HHmmss"));