myfiles = dir [fullfile [mydir, '*.*']]];'*.*']];
myfiles [[myfiles.isdir]] = []; %nhảy . và .. và tất cả các thư mục khác%skip . and .. and all other folders
cho i = 1: chiều dài [myfiles];i=1:length[myfiles];
tên tệp = myfiles [i] .name;
[~, basename, ext] = fileParts [tên tệp];
Nếu isempty [basename]isempty[basename]
fprintf ['bỏ qua tệp chấm "%s" \ n', tên tệp]'skipping dot file "%s"\n', filename]
tiếp tục; %vào tệp tiếp theo; %go on to next file
chấm dứt
chuyển đổi extext
Case {'.xls', '.xlsx'}{'.xls', '.xlsx'}
fprintf ['đó là xlsread cho tệp "%s" \ n', tên tệp];'it is xlsread for file "%s"\n', filename];
emg = xlsread [tên tệp];
trường hợp '.csv''.csv'
fprintf ['nó là csvread cho tệp "%s" \ n', tên tệp];'it is csvread for file "%s"\n', filename];
emg = csvread [tên tệp];
nếu không thì
fprintf ['Cảnh báo: Tệp "%s" là tiện ích mở rộng không được công nhận \ n', tên tệp];'Warning: file "%s" is unrecognized extension\n', filename];
tiếp tục; %vào tệp tiếp theo; %go on to next file
chấm dứt
chuyển đổi ext'processing data with %d rows and %d columns\n', size[emg,1], size[emg,2]];
Case {'.xls', '.xlsx'}
fprintf ['đó là xlsread cho tệp "%s" \ n', tên tệp];
emg = xlsread [tên tệp];
trường hợp '.csv'
fprintf ['nó là csvread cho tệp "%s" \ n', tên tệp];%frequency
emg = csvread [tên tệp];'processed the data in file "%s". Now what?\n', filename];
chấm dứt
Ngay bây giờ tôi đang phát triển một ứng dụng sử dụng dữ liệu từ tệp CSV được tạo bởi máy. Vấn đề xảy ra khi tôi cố gắng đọc tệp bằng xlsread. Mã hoạt động hoàn hảo khi sử dụng phiên bản .xlsx của tệp. Tất cả các giá trị được đọc chính xác, tức là, 1.753 sẽ được coi là một số thập phân. Tuy nhiên, khi tôi chọn phiên bản .csv, số đã nói ở trên sẽ được đọc là 1753 [một nghìn blablabla].
[Tên tệp, tên pathName] = uigetFile [{'*. XLSX;*. CSV'}, 'bộ chọn tệp'];'*.xlsx;*.csv'},'File Selector'];
[~, ~, rawData] = xlsread [strcat [tên pathName, tên tệp]];
Đây là một phần của mã mà tôi sử dụng để chọn và đọc tệp. Trên cả hai trường hợp, tất cả các dữ liệu được đặt trên một mảng ô mà tôi cảm thấy có thể tha thứ được.
Có ai biết làm thế nào tôi có thể làm cho nó hoạt động với tệp CSV không ?. .
Cảm ơn trước.
Câu trả lời được chấp nhận
Học cách sử dụng fread, fgetl và các chức năng như vậy đã giải quyết vấn đề của tôi.
Thêm câu trả lời [1]
Tôi gặp khó khăn khi đọc trong một tệp CSV. Tôi thấy dễ dàng mở XL, chọn "Tệp", kéo xuống để "Nhập", nhập tệp CSV sau đó làm theo các trang hướng dẫn của XL [~ 4] để xuất tệp dưới dạng tệp .xlsx. Bạn có cơ hội chọn phân tách và phân định của bạn. Nó không phức tạp. Sau đó, bạn sẽ không gặp vấn đề gì khi đọc điều đó trong [với xlsread, ví dụ: m = xlsread ['dữ liệu của bạn.xlsx']].
Xem thêm
Thể loại
Hunt Treasure Treasure
Tìm kho báu ở Trung tâm Matlab và khám phá cách cộng đồng có thể giúp bạn!
Bắt đầu săn bắn!
Một lỗi đã xảy ra
Không thể hoàn thành hành động vì những thay đổi được thực hiện cho trang. Tải lại trang để xem trạng thái cập nhật của nó.