2013-01-02 89 views
5

快一個,爲什麼這個代碼心不是爲我工作:日期爲文件夾名稱

Directory.CreateDirectory(DateTime.ToString("dd-MM-yyyy")); 

Erorr:

Error 1 An object reference is required for the non-static field, method, or property 'System.DateTime.ToString(string)' Documents\Visual Studio 2008\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Form1.cs 83 39 WindowsFormsApplication1 

有什麼不對?如果我想將文件夾名稱命名爲「This is folder of」,然後添加今天的日期,它應該如何顯示?

+0

嘗試簡單的表達式'DateTime.ToString(「dd-MM-yyyy」)' - 會發生什麼? –

回答

17

也許你的意思是:

Directory.CreateDirectory(DateTime.Now.ToString("dd-MM-yyyy")); 
4
Directory.CreateDirectory(DateTime.Now.ToString("dd-MM-yyyy")); 
4

有什麼不對?

ToString實例方法不是靜態的,所以你不能把它直接DateTime類 - 你需要調用它的DateTime類的一個實例

如果我想將文件夾名稱命名爲「This is folder of」,然後添加今天的日期,它應該如何顯示?

可以使用DateTime類的Now/UtcNow屬性,它會給你如當前時間點

DateTime.UtcNow.ToString("dd-MM-yyyy"); 
+2

+1。詳細意見。附註:使用「yyyy-MM-dd」格式可以按名稱排序文件夾更合理... –

+0

@AlexeiLevenkov +1回來,因爲這是一個公平的點。當我發佈答案時,我在想我的UTC格式,但是因爲OP已經特別提到了'dd-MM-yyyy',我想給出一個能以他們想要的方式工作的解決方案。然而,正如你所說的排序目的UTC日期格式會更好。 – James