我尝试添加时间,但似乎无法自动更新。我在一定程度上把日期定对了,但它不会自动改变。这是我正在使用的代码:
public int year;
public int day;
public int hour;
public int minute;
public int seconds;
DateTime dt;
void Start(){
dt = new DateTime (year, month, day, hour, minute, seconds);
}
StreamWriter swriter = new StreamWriter (@"AssetsTime_Stamp.txt");
try(){
swriter.WritLine(dt.Date.ToString());
swriter.Close();
}
catch(Exception ex){
ex = new Exception("An error has occurred!!");
}
如何将其设置为更自动、更接近当地时间?
DateTime.Date
属性将只返回DateTime
的日期部分,因此您将始终从dt
获得00:00:00
// dt.Date.ToString()
dt.ToString()
您还需要使用未初始化的int(0
的)以外的参数来构造DateTime
。如果您需要当前时间,请考虑使用:
dt = DateTime.Now;
DateTime
在创建后不会自动更新。返回当前时间和日期的DateTime.Now
静态属性就是您要查找的内容。所以,基本上,你不需要所有的year, month,
等变量。此外,DateTime
包含一些不同的转换为字符串的方法,您可能需要尝试一下。
swriter.WriteLine(DateTime.Now.ToString());
// writes 2015-06-30 23:54:53, but it might look different for you, because it depends on regional settings
swriter.WriteLine(DateTime.Now.ToLongTimeString());
// 23:54:53
swriter.WriteLine(DateTime.Now.ToLongDateString());
// 30 czerwca 2015 - again dependent on your regional settings
swriter.WriteLine(DateTime.Now.ToShortTimeString());
// 23:54
swriter.WriteLine(DateTime.Now.ToShortDateString());
// 2015-06-30