编者注: This file was selected as MATLAB Central Pick of the Week
now works with empty cells, numeric, char, string, row vector, and logical cells.
row vector such as [1 2 3] will be separated by two spaces, that is "1 2 3"
other types will be converted to the string "NA".
One array can contain all of them, but only one value per cell.
2x times faster than Sylvain's codes (8.8s vs. 17.2s):
tic;C={'te','tm';5,[1,2];true,{}};C=repmat(C,[10000,1]);cell2csv([datestr(now,'MMSS') '.csv'],C);toc;
credits go to Sylvain Fiedler:
modified and optimized from Sylvain Fiedler's codes at http://www.mathworks.com/matlabcentral/fileexchange/4400-cell-array-to-csv-file--cell2csv-m-
To get csv back to cell, use csv2cell(). There are a couple of that on fileexchange. I have packed them into a single library together with other useful routines. Feel free to check at http://www.mathworks.com/matlabcentral/fileexchange/47193-easy-matlab-and-shell-interaction-library--ez-m-
引用格式
Jerry (2026). Cell Array to CSV-file [improved cell2csv.m] (https://ww2.mathworks.cn/matlabcentral/fileexchange/47055-cell-array-to-csv-file-improved-cell2csv-m), MATLAB Central File Exchange. 检索时间: .
