一些c#代码如:
Array arr=Array.CreateInstance(typeof(oject),3);
bool b=true;
int i =2;
float[] foo={1.1f,2.2f};
arr.setValue(b,0);
arr.setValue(i,0);
arr.setValue(foo,0);
string str=GetParamStringFromArrayObject(arr.GetValue(3));
string GetParamStringFromArrayObject(object obj)
{
if(obj.GetType().IsArray)
{
int demesion=obj.GetType().GetRank();//error,how to get the demesion(should be 2)
return obj.ToString();//error,i want to return the string delimeter by ' ' of the float array,how to do?
}
}
如上面的代码,如果我想从对象中获取值是数组的字符串,我怎么能得到它,以及如何得到数组的demesion?
非常感谢。
答案 0 :(得分:0)
您必须将对象转换为数组,如下所示:
string GetParamStringFromArrayObject(object obj)
{
Array array = obj as Array;
if (array != null)
{
int demesion = array.Rank;
// etc.
}
}
答案 1 :(得分:0)
if(obj is Array)
{
int size = (obj as Array).Length; // get size
string items = ""; // get string
foreach (object item in obj as Array)
items += item.ToString() + ",";
}