Hashtable을 사용하여 여러 스레드의 응답을 저장하는 일부 오래된 코드를 디버깅해야합니다.C# .NET 1.1의 Hashtable 키와 데이터를 인쇄하십시오.
전체 Hashtable을 살펴보고 Hastable에서 키와 데이터를 모두 인쇄하는 방법이 필요합니다.
어떻게이 작업을 수행 할 수 있습니까? 에서
Hashtable을 사용하여 여러 스레드의 응답을 저장하는 일부 오래된 코드를 디버깅해야합니다.C# .NET 1.1의 Hashtable 키와 데이터를 인쇄하십시오.
전체 Hashtable을 살펴보고 Hastable에서 키와 데이터를 모두 인쇄하는 방법이 필요합니다.
어떻게이 작업을 수행 할 수 있습니까? 에서
foreach(string key in hashTable.Keys)
{
Console.WriteLine(String.Format("{0}: {1}", key, hashTable[key]));
}
public static void PrintKeysAndValues(Hashtable myList) {
IDictionaryEnumerator myEnumerator = myList.GetEnumerator();
Console.WriteLine("\t-KEY-\t-VALUE-");
while (myEnumerator.MoveNext())
Console.WriteLine("\t{0}:\t{1}", myEnumerator.Key, myEnumerator.Value);
Console.WriteLine();
}
:이 프레임 워크의 거의 모든 버전에 대한 작업을해야 http://msdn.microsoft.com/en-us/library/system.collections.hashtable(VS.71).aspx
...
foreach (string HashKey in TargetHash.Keys)
{
Console.WriteLine("Key: " + HashKey + " Value: " + TargetHash[HashKey]);
}
트릭은 당신의 목록/수집을 얻을 수 있다는 것입니다 반복을 실시하는 지정된 해시의 키 (또는 값)
편집 : 와우, 당신이 나중에 알고 꽤 코드 좀하고 다음 일을하려고이 5 개 답변 ... 8^D
나는이 너무 작동 것을 발견했다.
System.Collections.IDictionaryEnumerator enumerator = hashTable.GetEnumerator();
while (enumerator.MoveNext())
{
string key = enumerator.Key.ToString();
string value = enumerator.Value.ToString();
Console.WriteLine(("Key = '{0}'; Value = '{0}'", key, value);
}
도움 주셔서 감사합니다.
내가 좋아하는 :
foreach(DictionaryEntry entry in hashtable)
{
Console.WriteLine(entry.Key + ":" + entry.Value);
}
Console.WriteLine (entry.Key + ":"+ entry.Value); // 닫는 중괄호 누락 –
난 당신이 할 수 있어야 @Pellet LINQ ... – Pellet
이 작업을 수행 할 수있는 짧은 방법이 있었으면 좋겠어 ...'(hashTable.Keys에서 문자열 키에서 새로운 선택 {key, hashTable [key]})' –