C#输出控制台-“;System.Collection.GenericDictionary2+ValueCollecti
本文关键字:System Collection GenericDictionary2+ValueCollecti 输出 控制台 | 更新日期: 2023-09-27 18:26:53
我是c#的新手,控制台输出有问题。我已经包括了使用System和使用System.IO但当我在控制台输出中打印一些东西时,我什么也看不到。如果我写:
`Console.WriteLine("AAAAAAA");`
但我看不到AAAAAAAA。。。为什么?
我在kinect FaceBasic代码中:我想打印一个变量。(FaceFrameResults值)
变量为FaceFrameResult.FacePointsInFraredSpace属性。
Type: IReadOnlyDictionary<FacePointType, Point>
(http://msdn.microsoft.com/en-us/library/hh136548.aspx)
我想用这个代码打印这个:
Console.WriteLine("Key = {0}, Value = {1}",faceFrame.FaceFrameResult.FacePointsInColorSpace.Keys,faceFrame.FaceFrameResult.FacePointsInColorSpace.Values);
但什么都没发生,也没有给我任何错误或警告。如果我尝试使用消息框打印值
`MessageBox.Show(faceFrameResults[index].FacePointsInInfraredSpace.Values.ToString());`
`MessageBox.Show(faceFrameResults[index].FacePointsInInfraredSpace.Values);`
我得到这个:
System.Collection.Generic.Dictionary'2+ValueCollection[Microsoft.Kinect.Face.FacePointType.Microsoft.Kinect.PointF]
问题出在哪?提前感谢您的回复!
您正试图打印出一个集合,您不能直接这样做,您需要迭代该集合并逐个打印出每个项目。例如
foreach(var kvp in faceFrame.FaceFrameResult.FacePointsInColorSpace)
{
Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
}