有沒有什麼辦法讓轉換日期時間與TypeDescriptor.GetConverter.ConvertFromString(使用自定義格式)
TypeDescriptor.GetConverter.ConvertFromString
轉換爲DateTime
使用自定義格式,例如「2011-04-21 13-03-56
」?
如果沒有,那裏是否有任何可以應用於文件夾名稱(/,\,等等,不被允許,如你所知)的日期時間格式?
幫助非常感謝。在此先感謝 隨機I-上午
編輯:
由於我的要求似乎仍然不被理解正確,我試圖再次闡述一下我的問題。我的用戶正在使用特定名稱創建文件夾。例如「1000_Link_Topic1_2011-01-25 14-12-10」。他們可以自由組合他們喜歡的信息,並在需要時省略信息。他們甚至不必關心區分大小寫。所以我可能會遇到另一個名爲「1000_link_Topic2」的文件夾。
我所擁有的是一個具有單個屬性的單個類,用於每個可能的信息片段。在這種情況下,我會(因爲我只好找檢查每個屬性的默認值,而不管物業類型我使用可空類型的一種方式):
Short? short_val;
EContentType? enum_val;
String string_val;
DateTime? datetime_val;
我的代碼顯然拆分的文件夾名稱爲「_」然後告訴每個片段它屬於哪個屬性類型。只要我知道相應的類型,我試圖轉換爲類型,讓我們說噸,使用TypeDescriptor.GetConverter(t).ConvertFromString(info_frag[i])
。我希望你現在明白爲什麼我不能使用另一種轉換方法。
該代碼適用於上述所有類型。我的問題是找到可以在文件夾名稱上使用的自定義日期時間格式。我所知道的所有格式都是使用冒號來分隔幾分鐘和幾秒的小時數。
我想是從一個自定義DateTime格式使用TypeDescriptor.GetConverter.ConvertFromString
轉換爲一個DateTime對象的方式。如果這是不可能的,我需要找到一個標準的DateTime格式,它可以被指定爲一個文件夾名稱,而不需要進一步轉換,或者以某種方式通過我的自定義格式擴展內置的DateTime格式。如果它將成爲後者,我不在乎能夠使用秒或分鐘。時間將完成這項工作。
再次感謝您像您一樣耐心,並幫助我解決這個問題。隨意問你許多更多的問題,只要你喜歡。我希望你能幫助我得到這個工作。
隨機I-上午
應該是什麼讓您的約會時間 – Dotnet 2011-04-21 11:10:53
其實我真的不關心什麼格式的輸出格式我在用。我唯一的限制是我可以使用它並將其應用於文件夾名稱。 – 2011-04-21 11:12:28
你是否需要秒鐘才能進入文件夾名稱 – Dotnet 2011-04-21 11:15:44