How to use copyfile function correctly?

I have a text file which was created in the "Current Folder" window. Now, I want to re-save this file in another direction (or copy the file as I did). This is my code:
[FileName,PathDir] = uiputfile('log_MCES.txt','Save Calculation Notes');
if isequal(FileName,0) || isequal(PathDir,0)
else
copyfile(FileName, PathDir)
end
The original file it contains the following:
Note 1: [Graphical Representation] A cost node is invisible for an energy node.
=====================================
Note 2: An Optimum Solution has been Achieved.
=====================================
But the copied one is:
Note 1: [Graphical Representation] A cost node is invisible for an energy node.=====================================Note 2: An Optimum Solution has been Achieved.=====================================
As shown, the order of the texts has been changed and I don't know why?

 Réponse acceptée

Steven Lord
Steven Lord le 27 Août 2015

1 vote

The order of the text hasn't changed. It's being displayed with fewer newlines, but I suspect that's because you've opened the file in Microsoft Notepad. What does the file look like if you open it in the MATLAB Editor?

5 commentaires

Walter Roberson
Walter Roberson le 28 Août 2015
It would be expected that the copy would end up identical to the original in content (but not necessarily in metadata such as ownership)
Haitham
Haitham le 28 Août 2015
Modifié(e) : Haitham le 28 Août 2015
Yes exactly Steven, when I opened both files with Microsoft Notepad they being displayed with fewer newlines but with MATLAB Editor both of them are OK (as displayed in the Edit Text box). Is there a way to make the file displayed as it is in the MATLAB Editor?
Walter Roberson
Walter Roberson le 28 Août 2015
Unfortunately copyfile is built-in so I cannot see what it is doing. The behavior you describe is what might be expected if a program opened the source file in text mode and read a line at a time and write the line to a destination opened in binary mode. That implementation is not plausible, though, as it would be much more likely to call upon operating system facilities to copy the files.
Haitham
Haitham le 29 Août 2015
Thank you Walter.
Walter Roberson
Walter Roberson le 29 Août 2015
Haitham, is it possible that you are using MATLAB R14SP2 or earlier?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Environment and Settings dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by