簡體   English   中英

我如何獲得時間在Unity中使用StreamWriter和DateTime保存到文件(我在使用c#)?

[英]How do I get the time to save to a file using StreamWriter and DateTime in Unity (I'm using c#)?

我嘗試增加時間,但似乎沒有自動更新。 我能夠正確地確定日期,但是它不會自動更改。 這是我正在使用的代碼:

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 (@"Assets\Time_Stamp.txt");
try(){
    swriter.WritLine(dt.Date.ToString());
    swriter.Close();
}
catch(Exception ex){
    ex = new Exception("An error has occurred!!");
}

如何解決此問題,使其更自動且更接近當地時間?

DateTime.Date屬性將只返回的日期部分DateTime ,所以你總是從一開始00:00:00 dt

// 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM