Comment lire des chaînes de caractères à partir d'un fichier avec sscanf ou fscanf?

Alors, bien sûr, je vais avoir un peu de mal maintenant. Je suis en train de lire un fichier texte qui va quelque chose comme ceci dans les colonnes de l'ordre. Ce que je voudrais faire est de stocker le nombre, le caractère et les colonnes de la chaîne séparément dans les tableaux.

[Numbers] [Characters] [Strings] 

Maintenant, alors que j'ai compris comment lire le nombre et le caractère des colonnes dans leurs propres tableaux, je n'arrive pas à le faire avec la colonne de chaîne. Au moins, pas fscanf ou sscanf, qui sont les commandes que je veux utiliser.

Comment pouvez-vous lire un fichier organisé en tant que tel à l'aide de fscanf ou sscanf? (Je sais à propos de textscan, je veux savoir si c'est possible avec fscanf ou sscanf).

D'accord, permettez-moi d'ajouter un peu de code ici. Ainsi, alors que je faisais des recherches sur ce que j'ai essayé de la manière suivante:

fid = fopen('Data.txt', 'w+'); 
i = 1;
while ~feof(fid)
     line = fgets(fid);
     M(i) = sscanf(line, '%d, %c, %s', [3,inf];
     i = i+1; 
end

Cela fonctionne, mais M finit par sortir, seulement comme un vecteur ligne composé de la première colonne de chiffres dans le fichier de données. Il a juste ignore complètement l'existence de caractères et chaînes de caractères.

Maintenant, pour obtenir une meilleure compréhension de la fonction sscanf j'ai essayé les

fid = fopen('Data.txt', 'w+'); 
    i = 1;
    while ~feof(fid)
         line = fgets(fid);
         M(i) = sscanf(line, '%d, %d, %d', [3,inf];
         i = i+1; 
    end

Pour un ensemble d'échantillons de données comprenant des colonnes de nombres. Ce qui, incidemment, fait exactement la même chose que précédemment; il se contente de lire le premier numéro de la colonne de données et se ferme. Donc, je ne sais même pas comment utiliser sscanf, feof, ou fgets correctement, dans le fond. Donc, je pourrais aussi utiliser un peu d'aide ici.

Et je sais que d'essayer de lire juste des colonnes de nombres est trivial avec fscanf, mais j'essaie de comprendre sscanf et fgets ici.

OriginalL'auteur GeneralPancake | 2013-05-16