Why does XMLREAD introduce extra whitespace into my .xml file?

5 views (last 30 days)
I read in and export .xml files using the XMLREAD and XMLWRITE functions. If I read in and export to the same file without making any changes, additional whitespace characters are introduced.

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 6 Apr 2012
The extra whitespace is introduced by the Saxon XML processor, which is the library that MATLAB uses for the XML processing.
To work around this issue, use the function below to automatically remove all extra new whitespaces and new lines in the XML file:
function xmlremoveextralines(filePath)
% Read file.
fId = fopen(filePath, 'r');
fileContents = fread(fId, '*char')';
fclose(fId);
% Write new file.
fId = fopen(filePath, 'w');
% Remove extra lines.
fwrite(fId, regexprep(fileContents, '\n\s*\n', '\n'));
fclose(fId);

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!