新手求助关于c#中object取值的问题(在线等)

odinzu 2009-07-07 10:43:17
我在程序中调用delphi写的DLL,在delphi中定义为variant,事实上是一个float的二维数组,在C#中返回值类型为
v {object[0x00000001..0x00000003]}
[0x00000001] {float[0x00000001..0x00000005]}
[0x00000002] {float[0x00000001..0x00000005]}
[0x00000003] {float[0x00000001..0x00000005]}
请问如何将其中的值取出来?


...全文
450 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
feiwu1978520 2011-01-26
  • 打赏
  • 举报
回复
太厉害了,帮了我大忙,实在感谢
odinzu 2009-07-08
  • 打赏
  • 举报
回复
太感谢了。终于搞定了
odinzu 2009-07-07
  • 打赏
  • 举报
回复
已发邮件,继续在线等
zgke 2009-07-07
  • 打赏
  • 举报
回复
如果ref byte[] 也不行...

能发送DLL和你目前的例子到zgke@sina.com吗?
odinzu 2009-07-07
  • 打赏
  • 举报
回复
使用 ref float[,] 提示“外部组件发生错误”,这个曾经试过,因为是调用delphi写的DLL,似乎必须使用object定义
zgke 2009-07-07
  • 打赏
  • 举报
回复
你声明的时候使用 ref float[,] 看看.如果不行使用ref byte[] 看看.
odinzu 2009-07-07
  • 打赏
  • 举报
回复
object.GetType().Name 为Object[*]
zgke 2009-07-07
  • 打赏
  • 举报
回复
如果你能转换成
object[0x00000001..0x00000003]}
[0x00000001] {float[0x00000001..0x00000005]}
[0x00000002] {float[0x00000001..0x00000005]}
[0x00000003] {float[0x00000001..0x00000005]} 字符串
你可以考虑用正则 或则 正则取值 ..
使用object.GetType().Name 来看看能不能获取到字符串.
odinzu 2009-07-07
  • 打赏
  • 举报
回复
起来,不要沉。。。
odinzu 2009-07-07
  • 打赏
  • 举报
回复
是的。。
zgke 2009-07-07
  • 打赏
  • 举报
回复
你获取到的object 类型就是
object[0x00000001..0x00000003]}
[0x00000001] {float[0x00000001..0x00000005]}
[0x00000002] {float[0x00000001..0x00000005]}
[0x00000003] {float[0x00000001..0x00000005]} ??



zgke 2009-07-07
  • 打赏
  • 举报
回复
int[,] ChannelInfo = null;
ArrayList aaa = new ArrayList();
float[,] aaaaa = new float[25, 20];
ReadChannelInfo(1, 0,out ChannelInfo);
// int tt = ChannelInfo[0, 0];
object v2 ;
ReadChannelData(1, 0,out v2);

Array _ObjectArray = (Array)v2;

int _ObjectCount = _ObjectArray.GetLength(0);

for (int i = 0; i != 25; i++)
{
Array _OneArray =(Array)_ObjectArray.GetValue(i+1);

for (int z = 0; z !=20 ; z++)
{
aaaaa[i, z] = (float)_OneArray.GetValue(z + 1);
}
}


这样...

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧