Azzera filtri
Azzera filtri

CSV: Create New Headerline

5 visualizzazioni (ultimi 30 giorni)
Amanda
Amanda il 6 Mag 2013
In a CSV file, I would like to replace (delete) a headerline, first line, and create a new headerline. So the CSV file is (for this example I applied extra spaces to make it more readable):
State, Tornado, Hurricane, Earthquake,
Texas, 34, 5, 0,
Indiana, 8, 0, 2,
California, 2, 2, 20,
North Carolina, 1, 10, 1,
So now I need to delete the first headerline and replace it with a new headerline -- ST TOR HUR EAR -- see below:
ST, TOR, HUR, EAR,
Texas, 34, 5, 0,
Indiana, 8, 0, 2,
California, 2, 2, 20,
North Carolina, 1, 10, 1,
Thanks,
Amanda
  2 Commenti
Cedric
Cedric il 6 Mag 2013
I still don't know whether there are commas in your CSV file or if the content is really like what is written in your question (?)
Amanda
Amanda il 6 Mag 2013
Modificato: Amanda il 6 Mag 2013
Yes -- there are commas. I will edit it.

Accedi per commentare.

Risposta accettata

Cedric
Cedric il 6 Mag 2013
Modificato: Cedric il 6 Mag 2013
Assuming that there is no comma but tabs ( \t ) as delimiters, I give you one way to do it:
% - Read input file data content (without header).
fid_in = fopen('myFile.csv', 'r') ; % Open input file for reading.
fgetl(fid_in) ; % Skip header line in input file.
content = fread(fid_in) ; % Read rest of input file.
fclose(fid_in) ; % Close input file.
% - Write output file: new header + previous data content.
fid_out = fopen('myFile_newHeader.csv', 'w') ; % Open input file for writing.
fprintf(fid_out, 'ST\tTOR\tHUR\tEAR\n') ; % Output new header.
fwrite(fid_out, content) ; % Output previous data content.
fclose(fid_out) ; % Close output file.
  2 Commenti
Amanda
Amanda il 6 Mag 2013
WOW! Thanks. You have been one of the most helpful forum members. And most of all, I am learning so much.
Cedric
Cedric il 6 Mag 2013
You're welcome, I'm glad it helps!

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by