为了运行某个软件,我使用.txt
了需要用 Matlab 操作的输入文件。我知道该怎么做,我没想到会出现问题。由于它不起作用,我将我的操作脚本减少到最低限度,所以实际上没有任何改变。除了一些空白,其他软件似乎对此反应非常敏感。
我的部分文件如下所示:
...
*CONTROL_TERMINATION
$# endtim endcyc dtmin endeng endmas
1.000000 0 0.000 0.000 0.000
*CONTROL_TIMESTEP
$# dtinit tssfac isdo tslimt dt2ms lctm erode ms1st
0.000 0.900000 0 0.000 -1.000E-4 0 0 0
$# dt2msf dt2mslc imscl
0.000 0 0
...
我正在将其加载到 Matlab 并直接再次保存而不进行更改:
% read original file
fid = fopen('filename.txt','r');
param = textscan(fid,'%s','delimiter','\n');
rows = param{1,1};
fclose(fid);
% overwrite to new file
fid = fopen('filename.txt','w');
fprintf(fid, '%s\r\n', rows{:});
fclose(fid);
输出文件在每一行的开头都缺少空格,这似乎是输入和输出文件的唯一区别。(至少我希望如此)
...
*CONTROL_TERMINATION
$# endtim endcyc dtmin endeng endmas
1.000000 0 0.000 0.000 0.000
*CONTROL_TIMESTEP
$# dtinit tssfac isdo tslimt dt2ms lctm erode ms1st
0.000 0.900000 0 0.000 -1.000E-4 0 0 0
$# dt2msf dt2mslc imscl
0.000 0 0
...
虽然这对我来说似乎很奇怪,但这应该是原因 - 我可以改变什么,两个文件看起来 100% 相同?我遇到的问题是空白有不同的长度。