Organize .txt file data
Mostrar comentarios más antiguos
Hi
I've got a text document and i would like to organize the data so that i could insert it in a table(SQL)

The 1st line is the number of organizations, the 2nd is the name of the first organization, the 3rd is the number of countries and then the countries until the next organization.
Does anyone have a clue on how this can be done?
Thanks
2 comentarios
Star Strider
el 12 de Dic. de 2014
Attaching the text file would help. (Use the ‘paperclip’ or ‘staple’ icon just to the left of the (?)Help button.)
Manel Carreira
el 12 de Dic. de 2014
Respuesta aceptada
Más respuestas (1)
Thorsten
el 12 de Dic. de 2014
fid = fopen('organizacoes.txt');
line = fgets(fid); i = 1;
while line ~= -1
T{i} = line(1:end-2); % end-2 to get rid of LF CR
line = fgets(fid); i = i + 1;
end
fclose(fid)
i = 2;
organization = {};
country = {};
while i <= size(T, 2)
n = double(T{i+1}) - double('0');
organization(end+1:end+n) = {T{repmat(i, [1 n])}};
country(end+1:end+n) = {T{i+2:i+2+n-1}};
i = i + 2 + n; % next organization
end
1 comentario
Thorsten,
- it is better to open text file with 'rt', so matlab can deal properly with line endings on different platform. You only need to deal with '' on all platforms. '\r' is appended / removed automatically for you on Windows.
- If you're going to strip the line endings anyway, use fgetl instead of fgets as fgetl does it for you.
Categorías
Más información sobre Data Import and Export en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!