У меня странное поведение в Matlab при работе с файлами RTF.
Файл rtf читается с помощью этой инструкции:
cin = textread(filename, '%s', 'delimiter', '\n');
(cin) — это ячейка Nx1, где N — количество строк в файле, поэтому я могу редактировать какую-то конкретную строку.
Я пишу файл RTF с функцией ниже:
function dum= cell2rtf(cin, filename)
[row, col]= size(cin);
fout= fopen(filename, 'w');
for ii=1:row
if(ii<row)
fprintf(fout, '%s\r\n', cin{ii});
else
fprintf(fout, '%s', cin{ii});
end
end
fclose(fout);
Странное поведение заключается в следующем: если строка cin{x}
представляет собой строку с содержимым
'19°\cell 19°\cell \cell \cell \cell 70°'
та же строка появляется, как показано ниже, когда файл записывается функцией
'19°\cell 19°\cell \cell \cell \cell 70°'
Я не могу понять, почему char '°'
становится '°'
в каждом случае, и я хотел бы знать, как это можно исправить.