2016-04-10 3 views
0

У меня 400 файлов в моем каталоге. У которых есть имя файла H1001, H1002, H1003 .... вот так. Я хочу прочитать эти файлы в matlabwhay zero не учитывается идентификатором% d

Когда я использую этот код, он дает мне ошибку.

'd=dir('C:\Users\Desktop\New\*.txt')> 


<num_files=length(d)> 

data=cell(1,num_files); 

for k = 1:400 

myfilename = sprintf('H1%3d.txt',k); 

mydata{k} = importdata(myfilename); 

end' 

он показывает

myfilename=H1 1. это неправильное имя файла H1001. поэтому ПОЛУЧИТЕ ОШИБКУ В СЛЕДУЮЩЕЙ ЛИНИИ.

Он не читает 00. Он дает пустое место.

Может ли любое тело сказать мне ответ.

ответ

1

Правильная строка формата, если вы хотите, чтобы нулевое заполненное правое скорректированное значение не было %3d (правое регулируется с пробелами), но вместо этого %03d;

for k = 1:400 
    myfilename = sprintf('H1%03d.txt',k); 
    mydata{k} = importdata(myfilename); 
end 

Разницу можно легко увидеть в

> printf('H1%3d.txt\n', 7); 
H1 7.txt 

> printf('H1%03d.txt\n', 7); 
H1007.txt 
+0

Благодаря его работы. –

+0

@RahulKumarVijay Если ответ помог с вашей проблемой, пожалуйста, подумайте о том, чтобы принять его, используя галочку слева от ответа. Это позволит другим схожим проблемам легче найти решение. –

Смежные вопросы