• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

asp.net与Matlab类型转换(待补全)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

  上上篇的博客已经提到如何配置环境,即如何在asp.net中调用matlab生成的dll文件。这篇博客打算做个笔记,那就是matlab和C#数据类型如何转换。随着需求的增加,我会不断增加新的类型转换。

(1)C#二维数组转为Matlab矩阵

//这段代码主要就是将C#的二维数组转为Matlab的矩阵
double[,] frontDrawDataArray = new double[250, 290];
double[,] sideDrawDataArray = new double[250, 290];
double[,] topDrawDataArray = new double[250, 290];

for (int i = 0; i < 250; i++)
{
    for (int j = 0; j < 290; j++)
    {
        frontDrawDataArray[i, j] = double.Parse(frontDrawDataStrArray[i * 290 + j]);
        sideDrawDataArray[i, j] = double.Parse(sideDrawDataStrArray[i * 290 + j]);
        topDrawDataArray[i, j] = double.Parse(topDrawDataStrArray[i * 290 + j]);
    }
}

MWNumericArray frontSket = new MWNumericArray(frontDrawDataArray);
MWNumericArray sideSket = new MWNumericArray(sideDrawDataArray);
MWNumericArray topSket = new MWNumericArray(topDrawDataArray);

(2)Matlab的字符cell array转为C#的字符串

//C#访问matlab返回的字符cell array
//res在C#是MWArray类型,在Matlab中它是个cell array(res = cell(1,N)),里面的每一个元素是字符串。
MWCellArray nameCellArray = (MWCellArray)res;

string sortedModelNames = string.Empty;
int model_num = nameCellArray.NumberOfElements;

for (int i = 1; i <= model_num; i++)
{
    sortedModelNames += nameCellArray[i].ToString(); //访问cell array的第i个元素
    sortedModelNames += ',';
}
sortedModelNames += nameCellArray[model_num].ToString();

 

(3) Matlab数组转为C#的数组

double[,] csArray= (double[,])result.ToArray

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Rust : link.exe failed的bug发布时间:2022-07-18
下一篇:
Sentry 开发者贡献指南 - 后端服务(Python/Go/Rust/NodeJS)发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap