2016-11-15 65 views
1

在這部分代碼sDate顯示當前日期2016年11月16日,現在什麼是最好的方式添加7天到當前日期?例如如果當前日期是2016/11/29 + 7更改爲2016/12/06。我正在尋找一種將int值添加到日期的方法。Unity C#,如何將X天添加到日期?

string Year; 
string Month; 
string Day; 
float time; 
string sDate; 

void Start() 
{ 

     Year = System.DateTime.Now.Year.ToString(); 
     Month = System.DateTime.Now.Month.ToString(); 
     Day = System.DateTime.Now.Day.ToString(); 

     int Y = int.Parse (Year); 
     int M = int.Parse (Month); 
     int D = int.Parse (Day); 


     if (Y >= 2016 & M >= 11 & D >= 21) 
     { 
      sDate = Year + "/" + Month + "/" + Day + " | Expired"; 
      Debug.Log (sDate); 

      Application.Quit(); 
     } 
     else 
     { 
      sDate = Year + "/" + Month + "/" + Day + " | Working"; 
      Debug.Log ("System date: " + sDate); 
     } 

} 
+2

只需使用'DateTime.AddDays'。此外,爲什麼你將整數轉換爲字符串,然後將它們解析回整數? – juharr

+0

我是C#的新手,請編寫代碼示例 –

+0

以下鏈接指向文檔https://msdn.microsoft.com/en-us/library/system.datetime.adddays(v=vs.110).aspx – juharr

回答

1

所有你需要做的是使用標準的日期時間函數AddDays

DateTime result = original.AddDays(n); 

其中original是原始日期和n是您要添加的天數。

我還會檢查DateTime結構上的其他文檔,因爲有很多簡單的方法來做你在這裏嘗試的東西。正如在評論中提到的,你可以構建一個DateTime對象從它的組成部分:

DateTime referenceDate = new DateTime(2016, 11, 15); 

,然後做的是比較:

if (testDate >= referenceDate) 
{ 
    // Do something 
} 

+2

你給男人一條魚,你喂他一天。你給一個男人的MSDN鏈接,你的生活飼料他:https://msdn.microsoft.com/en-us/library/system.datetime.adddays(v=vs.110).aspx – axlj

+2

@axlj - 給一個男人是一個機會;) – ChrisF

+2

如果他沒有完全意識到如何吃飯,他的生活很難養活他。 – Hank