str2double('00010001') or str2num('00010001') gives output as 10001 by ignoring the MSB '000' bits how to retain them?

5 views (last 30 days)
Hi, I have some filenames which start with '0**' something like that (00010001,00010002,...00010010 etc), When I use str2double on that filename string str2double('00010001') it outputs 10001 without considering the MSB bits. Is there anyway I can get the filename as '00010001'?
Thanks, Gopi
  2 Comments
Gopichandh Danala
Gopichandh Danala on 14 Mar 2017
The problem is lets say the filenames are '1','2','10' and I want to read them in order after reading files Matlab by default reads them in order of '1','10' and then '2'. Even if i use sort function it does the same. So I need to get all filenames ans sort them properly before reading them

Sign in to comment.

Answers (1)

Akira Agata
Akira Agata on 14 Mar 2017
I think you want to generate a list of file names with serial number whose prefix is '0001'. If so, the following code will help. This generates the file name list from '00010001' with length of N.
N = 10;
list = strcat(repmat('0001',N,1),num2str((1:N)','%04d'));
  3 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!