How to create XML file without the first line of <?xml version="1.0" encoding="utf-8"?>

Hello,
if I use:
DOMnode = readxml(my_file_name_source);
writexml(DOMnode , my_file_name_target);
I'll get the same XML file with the addition of:
<?xml version="1.0" encoding="utf-8"?>
How can I create my new file without that auto generated line?
THANKS

 Accepted Answer

You could do something like this, which first writes the xml file as usual (with the first line) using xmlwrite(), then reads the file into a variable, removes the first line, and writes the rest back to the same file.
DOMnode = xmlread(my_file_name_source);
xmlwrite(DOMnode , my_file_name_target);
% read the xml file
fid = fopen(my_file_name_target,'r');
data = fread(fid);
fclose(fid);
% remove the first line
idx = find(data == newline(),1);
if ~isempty(idx)
data(1:idx) = [];
end
% write the remaining contents back to the same file
fid = fopen(my_file_name_target,'w');
fwrite(fid,data);
fclose(fid);

More Answers (0)

Products

Release

R2021b

Asked:

on 13 Feb 2022

Commented:

on 14 Feb 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!