sandy c#中不知道数组的类型能不能遍历?Hashtable ht = new Hashtable(); 本帖最后由 plglenn11 于 2010-04-10 20:40:43 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是这样的。 foreach (System.Collections.DictionaryEntry objDE in objHasTab){ Console.WriteLine(objDE.Key.ToString()); Console.WriteLine(objDE.Value.ToString());} 还有这样。System.Collections.IDictionaryEnumerator enumerator = objHashTablet.GetEnumerator(); while (enumerator.MoveNext()){ Console.WriteLine(enumerator.Key); // Hashtable关健字 Console.WriteLine(enumerator.Value); // Hashtable值} 是要遍历hashtable元素中的数组不是hashtable啊 sorry,不想去测试,,我看错楼主问题了。。 用split是否能满足楼主要求? 不需要判断类型的直接遍历enumerator.Value 是要遍历hashtable元素中的数组不是hashtable啊 哦~ 那就在遍历HashTable的基础上再分割每个Value转成数组 自己定义存和取的方法 连同数组的type一起存到hash的每个value里 Hashtable ht = new Hashtable(); int[] x = { 1, 2 }; ht["aa"] = x; Int64[] y = { 2, 3, 5 }; ht["bb"] = y; string[] z = { "5", "6", "7" }; ht["cc"] = z; foreach (object obj in ht.Keys) { Array arr = ht[obj] as Array; if (arr != null) { foreach (object o in arr) { Console.WriteLine(o); } } } foreach (System.Collections.DictionaryEntry objDE in objHasTab){ Console.WriteLine(objDE.Key.ToString()); Console.WriteLine(objDE.Value.ToString());} 也可如下Hashtable ht = new Hashtable(); int[] x = { 1, 2 }; ht["aa"] = x; Int64[] y = { 2, 3, 5 }; ht["bb"] = y; string[] z = { "5", "6", "7" }; ht["cc"] = z; foreach (object obj in ht.Keys) { IEnumerable myEnumerable = ht[obj] as IEnumerable; if (myEnumerable != null) { IEnumerator myEnumerator = myEnumerable.GetEnumerator(); while (myEnumerator.MoveNext()) { Response.Write(myEnumerator.Current); } } } Excel导入sql问题 怎样在页面上添加ascx控件? ?? 报表中如何传参数? DateTime转换问题 怎样把 网页对话框的dataset的数据传给父页面上的gridview 阿 ASP.Net中,关于事件的问题 如何让所有类都继承于一个基类? 水晶报表在本地运行可以,但上传到服务器就不行啦.还要传什么文件到服务器呀? 有没有谁碰到这样的问题? 输入字符串的格式不正确---急 “/”应用程序中的服务器错误 我用的是Access数据库
{
Console.WriteLine(objDE.Key.ToString());
Console.WriteLine(objDE.Value.ToString());
}
System.Collections.IDictionaryEnumerator enumerator = objHashTablet.GetEnumerator();
while (enumerator.MoveNext())
{
Console.WriteLine(enumerator.Key); // Hashtable关健字
Console.WriteLine(enumerator.Value); // Hashtable值
}
直接遍历enumerator.Value
Hashtable ht = new Hashtable();
int[] x = { 1, 2 };
ht["aa"] = x;
Int64[] y = { 2, 3, 5 };
ht["bb"] = y;
string[] z = { "5", "6", "7" };
ht["cc"] = z; foreach (object obj in ht.Keys)
{
Array arr = ht[obj] as Array;
if (arr != null)
{
foreach (object o in arr)
{
Console.WriteLine(o);
}
}
}
{
Console.WriteLine(objDE.Key.ToString());
Console.WriteLine(objDE.Value.ToString());
}
Hashtable ht = new Hashtable();
int[] x = { 1, 2 };
ht["aa"] = x;
Int64[] y = { 2, 3, 5 };
ht["bb"] = y;
string[] z = { "5", "6", "7" };
ht["cc"] = z; foreach (object obj in ht.Keys)
{
IEnumerable myEnumerable = ht[obj] as IEnumerable; if (myEnumerable != null)
{
IEnumerator myEnumerator = myEnumerable.GetEnumerator();
while (myEnumerator.MoveNext())
{
Response.Write(myEnumerator.Current);
}
}
}