Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 控制台应用程序输出_Php_Matlab_Console Application_Executable - Fatal编程技术网

Php 控制台应用程序输出

Php 控制台应用程序输出,php,matlab,console-application,executable,Php,Matlab,Console Application,Executable,我编译了一个matlab文件,它以可执行的形式显示大量数字,作为一个基于控制台的应用程序。我需要在php中对可执行文件的输出进行进一步计算。基于可执行控制台的应用程序的输出是ASCII格式还是数字格式?如何将ASCII输出转换为数字格式,以便在php中对其进行进一步计算 我正在使用disp(变量)显示输出。输出的格式为 (1,1) 0.1424 (2,1)0.0117 (3,1) 0.0000 (4,1) 0.0000 (5,1) 0.0677 (6,1) 0.0000 (7,1) 0

我编译了一个matlab文件,它以可执行的形式显示大量数字,作为一个基于控制台的应用程序。我需要在php中对可执行文件的输出进行进一步计算。基于可执行控制台的应用程序的输出是ASCII格式还是数字格式?如何将ASCII输出转换为数字格式,以便在php中对其进行进一步计算

我正在使用disp(变量)显示输出。输出的格式为

    (1,1) 0.1424
(2,1)0.0117 (3,1) 0.0000 (4,1) 0.0000 (5,1) 0.0677 (6,1) 0.0000 (7,1) 0.5308 (8,1) 0.0077 (9,1) 0.0512 (10,1) 0.0118 (11,1) 0.0001 (12,1)0.1764

(114,1)0.4564 (203,1) 0.2962 (250,1)0.2474

第1列至第7列

0.1373 0.0414 0.0541 0.1342 0.5606 0.5293 0.1652

第8列至第14列

0.0341 0.0396 0.0633 0.0778 0.0289 0.0654 0.0752

第15列至第21列

0.3055 0.4602 0.0631 0.0360 0.0188 0.0497 0.0228

第22列至第28列

0.0294 0.0373 0.0734 0.3148 0.1703 0.0294 0.0057

第29列至第35列

0.0263 0.0382 0.0977 0.0396 0.1056 0.0781 0.1085

第36至42栏

0.1537 0.0239 0.0154 0.0046 0.0121 0.0700 0.0171

第43列至第49列

0.0304 0.0551 0.2174 0.2594 0.1179 0.0355 0.0103

第50列至第56列

0.0084 0.0188 0.0025 0.0019 0.0219 0.1391 0.1527

第57至63栏

0.0471 0.0313 0.0170 0.0557 0.0016 0.0044 0.0184

第64列至第70列

0.0194 0.2053 0.3206 0.1394 0.0208 0.0332 0.0658

第71列至第77列

0.0193 0.0073 0.0026 0.0223 0.1996 0.3017 0.0207

第78列至第84列

0.0168 0.0076 0.0038 0.1666 0.0278 0.0167 0.1070

第85列至第91列

0.3269 0.2546 0.0270 0.0026 0.0053 0.0079 0.0132

第92列至第98列

0.0059 0.0141 0.0205 0.1327 0.2656 0.0300.0049

第99列至第105列

0.0066 0.0228 0 0.0253 0.0622 0.0107 0.0792

第106列至第112列


0.0754 0.0157 0 0.0097 0.0229 0.1128 0.0549

每当程序产生“文本”输出时,它将作为ASCII。您通常可以通过管道将此文本传输到文件或其他进程。根据平台的不同,类似于命令末尾的
>myfile.txt
将生成一个文件
myfile.txt
,其中包含进程的所有输出(例如可能是
matlab-nosplash myScript.m>myfile.txt

现在的问题变成了用Python读取文本文件的问题。如何做到这一点,您可以参考

编辑 请注意,让程序直接(而不是通过控制台)将数字写入文件非常容易。下面是一个简单的例子:

A = 1:5;
fid = fopen('C:\mydir\mydata.dat', 'w');
fprintf(fid, '%d ', A);
fclose(fid);
这将创建一个数组,打开一个文件进行写入,将值写入该文件,然后关闭该文件。对于测试,您可以使用

fid = 1;

相反,这将产生到控制台的输出。我不确定如果您这样做,
fclose(fid)
语句是否不会导致问题…

我的程序生成数值输出,而不是文本。那么输出是ASCII格式的吗?我不想将结果保存在文本文件中,而是将其保存在php中的数组中以供进一步比较。我使用的是php而不是Python。那么php有什么帮助吗?如何创建输出?使用
fprintf(1,'%d',myVariable)
语句类型?是的,这是文本ascii。如果你用其他的方式,请通过编辑你的问题来描述它。我已经编辑了我的问题,请查看它。是否需要在数组中转换输出并在php中使用它?是的。您的问题是使用
disp
。您显示的输出全部损坏。请把它简化为可读性更强的内容。
大小(变量)
的输出是什么?它的显示方式看起来几乎像一个稀疏数组,但突然它变成了其他的东西?好的,我会让它简化为可读的东西。我只是想知道当更改到控制台应用程序时,数字输出是否会更改为ASCII格式?它是否以与.m文件相同的格式显示输出?