2016-06-22 5 views
0

Ich versuche eine Textdatei zu lesen und dann die Anzahl der Ziffern (Nummer 0 bis 9) in der Datei zu zählen. Ich habe fid = fopen ('Dateiname', 'r') benutzt, um die Datei zu öffnen, dann habe ich textscan (fid, '% f') benutzt, um die Ziffern zu erhalten, aber es gibt eine leere (0 mal 1) Matrix zurück. Ich habe auch fscanf benutzt, funktioniert aber nicht. Ich dachte, dass es die Formatangabe war, die falsch war, aber das Spielen mit anderen Formatspezifikationen funktioniert nicht. Bitte beachten SieWie bekomme ich die Anzahl der Ziffern aus einer Textdatei in Matlab?

Antwort

0

Zunächst versucht das Format Spec %f versucht, alle Zahlen in der Datei in Gleitkommazahlen zu lesen, die nicht ganz das ist, was Sie wollen, scheint es nicht.

Wenn alles, was Sie wollen, ist die Anzahl der Ziffern in der Datei, laden Sie die ganze Sache als Zeichenfolge und suchen Sie nach den Ziffern 0-9.

fid = fopen('filename', 'r'); 
characters = fread(fid, '*char'); 
fclose(fid); 

% Determine whether each character in the input was a digit between 0 and 9 
isDigit = ismember(characters, '0':'9'); 

% Count the total number of characters that were digits 
nDigits = sum(isDigit); 
+0

@ Suever vielen Dank. –

Verwandte Themen