我需要將所有的日期時間值轉換爲字符串,儘管我的項目中,我最後的所有代碼都遵循1個函數,其中我有4個不同的哈希表(實際上是CookComputing xmlrpc庫的XmlRpcStruct對象)。如何從所有散列表值中過濾出DateTime類型的值?
是否有任何方式,沒有迭代每個散列表 - 我可以轉換具有日期時間 - >字符串的散列表的值。
沒有迭代 - 我的意思是隻是爲了加快處理速度,但我需要解決它的嵌套哈希表,其中密鑰也包含另一個哈希表。
我需要將所有的日期時間值轉換爲字符串,儘管我的項目中,我最後的所有代碼都遵循1個函數,其中我有4個不同的哈希表(實際上是CookComputing xmlrpc庫的XmlRpcStruct對象)。如何從所有散列表值中過濾出DateTime類型的值?
是否有任何方式,沒有迭代每個散列表 - 我可以轉換具有日期時間 - >字符串的散列表的值。
沒有迭代 - 我的意思是隻是爲了加快處理速度,但我需要解決它的嵌套哈希表,其中密鑰也包含另一個哈希表。
您可以在發送到該服務器之前處理您的哈希表。檢查每個對象。它確實是一個DateTime,然後用適當的格式替換爲.ToString。
public static void ProcessHT(Hashtable ht)
{
Hashtable dates = new Hashtable();
foreach(DictionaryEntry de in ht)
{
if (de.Value is DateTime)
dates.Add(de.Key, de.Value);
}
foreach(DictionaryEntry de in dates)
{
ht.Remove(de.Key);
ht.Add(de.Key, ((DateTime)de.Value).ToString("s"));
}
}
public static void RunSnippet()
{
Hashtable ht = new Hashtable();
ht.Add("1", "one");
ht.Add("date", DateTime.Today);
ht.Add("num", 1);
Print(ht);
WL("---");
ProcessHT(ht);
Print(ht);
}
private static void Print(Hashtable ht)
{
foreach (DictionaryEntry de in ht)
{
WL("{0} = {1}", de.Key, de.Value);
}
}
爲什麼不能將日期轉換爲將它添加到散列表中的時間?
myHashTable.Add("ADate", DateTime.Now.ToString());
您能否提供一些關於如何填寫哈希表以及如何將它們發送到服務器的詳細信息? – FrenchData 2009-11-13 10:34:50