我有對象數組,我怎樣才能打印它的包含控制檯?向控制檯輸出對象陣列
我需要打印屬性及其值。
object[] attrs;
attrs = prop.GetCustomAttributes(true);
我必須使用反射,但我不知道如何使用它。
我有對象數組,我怎樣才能打印它的包含控制檯?向控制檯輸出對象陣列
我需要打印屬性及其值。
object[] attrs;
attrs = prop.GetCustomAttributes(true);
我必須使用反射,但我不知道如何使用它。
您需要使用反射。這裏有一個例子:
static void Main(string[] args)
{
string obj1 = "a string";
int obj2 = 12;
DateTime obj3 = DateTime.Today;
object[] obj_array = { obj1, obj2, obj3 };
foreach (object obj in obj_array)
{
//Print value
Console.WriteLine("Value: " + obj.ToString());
//Print property names
Console.WriteLine("Property Names:");
foreach (PropertyInfo prop in obj.GetType().GetProperties())
{
Console.WriteLine(prop.Name);
}
Console.WriteLine();
}
Console.Read();
}
編輯:對不起,你可能想要檢索對象本身的屬性值。在這種情況下,下面是另一個示例:
class Program
{
static void Main(string[] args)
{
MyObject myobj = new MyObject("prop1", "prop2");
object[] obj_array = { myobj };
foreach (object obj in obj_array)
{
foreach (PropertyInfo property in obj.GetType().GetProperties())
{
Console.WriteLine("Property Name: " + property.Name);
Console.WriteLine("Property Value: " + property.GetValue(obj));
}
}
Console.Read();
}
}
public class MyObject
{
public string Property1 { get; set; }
public string Property2 { get; set; }
public MyObject(string p1, string p2)
{
Property1 = p1;
Property2 = p2;
}
}
您可以嘗試:Console.WriteLine(string.Join(",", attrs));
之後是什麼對象數組,巫婆包含屬性和它的值,並且我需要打印它 –
那麼,到目前爲止,您的研究揭示了什麼?爲什麼它不能幫助回答你的問題? –
'foreach(var attrs).......'' –
我想你沒有明白我的意思,我需要打印屬性名稱和它的值 –