MATLAB Answers

Convert .txt files to .CSV files

113 views (last 30 days)
Curious Mind
Curious Mind on 2 Oct 2018
Answered: Walter Roberson on 3 Oct 2018
Hi Guys:
I want help in converting .txt files in my current matlab directory into .csv files while retaining the original names of the files. Most importantly, The code should also save the .csv files into the same folder or directory as the .txt files. I really appreciate it.


Guillaume on 2 Oct 2018
.txt is usually used to indicate that the file contains text. It does not say anything about how that text is formatted.
.csv stands for comma separated value. It is also a text file. And other than the fact that the values are separated by a comma, it again does not say anything else about the formatting.
Perhaps, all you need to do is change the extension from .txt to .csv. If you need more, then you need to specify what the input and output format are.
Walter Roberson
Walter Roberson on 2 Oct 2018
Is this just renaming them or does data have to be extracted from the files and written in the csv?
Curious Mind
Curious Mind on 2 Oct 2018
They need to be extracted and then saved with the .csv extension.

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 3 Oct 2018
dinfo = dir('*.txt');
filenames = {};
for K = 1 : length(filenames)
thisfile = filenames{K};
[basedir, basename, ~] = fileparts(thisfile);
newfile = fullfile(basedir, [basename '.csv']);
convert_to_csv(thisfile, newfile);
Where convert_to_csv is a function that you would write that would take a particular input file name and a particular output file name and do whatever is necessary to extract the data from that .txt and write it to the csv.
You have not told us anything about the structure of the .txt so we do not know what needs to be done. Some .txt files are very easy to convert to csv, but other .txt files can take a lot of work to convert to .csv


Sign in to comment.


Community Treasure Hunt

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

Start Hunting!