2015-08-04 4 views
0

Я пытаюсь импортировать все строки, которые начинаются с '//', я попытался извлечь его со сценария ниже. может кто-нибудь проверить мой сценарий, пожалуйста?Импорт текстовых файлов по блокам?

enter image description here

formatSpec = '//NFE=%f //ElapsedTime=%f //SBX=%f //DE=%f //PCX=%f //SPX=%f //UNDX=%f //UM=%f //Improvements=%f //Restarts=%f //PopulationSize=%f //ArchiveSize=%f //MutationIndex=%f %*f'; 
N=1 
k = 0; 
while ~feof(fileID) 
k = k+1; 
C = textscan(fileID,formatSpec,N,'CommentStyle','#','Delimiter','\n'); 
end 

ответ

0

Это мне не ясно, как вы хотите, чтобы вывод посмотреть, но вот один possibilitiy:

fid = fopen(filename, 'rt'); 
dataset = textscan(fid, '%s', 'delimiter', '\n', 'headerlines', 0); 
fclose(fid); 
result = regexp(dataset{1}, '//([A-Za-z].*)=([0-9\.].*)', 'tokens'); 
result = result(cellfun(@(x) ~isempty(x), result)); 

результат содержит как тип, например, NFE или SBX, а также число (хотя и в формате символов).

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