How do I read a file in using fopen correctly

2 Ansichten (letzte 30 Tage)
Daniel Montgomery
Daniel Montgomery am 9 Feb. 2020
Kommentiert: Walter Roberson am 10 Feb. 2020
I am trying to read in spectroscopic data in using fopen and place the data into the y array. The file dimensions are 69 * 22533. What am I doing incorrectly?
x = 1:5; %5
y = zeros(69,22533);
fileID = fopen('Pandora166s1_LabGSFC_20200115_L0_subset (1).txt','w');
fprintf(fileID,'%d %4.4f\n',y);
fclose(fileID);
  3 Kommentare
Daniel Montgomery
Daniel Montgomery am 10 Feb. 2020
It is an index less text file. My first character is a string I want to import the data from matlab. The data in Y would start at zero and start a new row at the 69th character.
Walter Roberson
Walter Roberson am 10 Feb. 2020
Please show an extract of the file.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Daniel Montgomery
Daniel Montgomery am 10 Feb. 2020
I did not know a consistent number of characters was required for reading in a file. What would be the best way to to import this to get cell seperated values? I am trying to isolate a range of cloumns for data analaysis.
  2 Kommentare
Walter Roberson
Walter Roberson am 10 Feb. 2020
Consistency of line length is not usually required, but when we asked about the format you said "The data in Y would start at zero and start a new row at the 69th character". That would not make sense unless you had a fixed width line.
Walter Roberson
Walter Roberson am 10 Feb. 2020
What you attached has three columns per line, such as "Instrument", "type:" and "Pandora". But that looks pretty accidental to me and it looks more likely that you have a parameter name phrase followed by : then a parameter value that is not necessarily numeric. Because it is not numeric we have to guess that in non-numeric cases you want until the end of the line. The example you give only shows one numeric value on any line but we can speculate that there might be lines with multiple numbers.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Daniel Montgomery
Daniel Montgomery am 10 Feb. 2020
Instrument type: Pandora
Instrument number: 166
Spectrometer number: 1
  1 Kommentar
Walter Roberson
Walter Roberson am 10 Feb. 2020
That is not a consistent number of characters per row?
What would you expect the output to be for that extract?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Low-Level File I/O finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by