Làm cách nào để xử lý tất cả các tệp có đuôi ".xyz" trong một thư mục? Ý tưởng cơ bản là tôi muốn một danh sách các tên tập tin và sau đó là một vòng lặp for để tải từng tập tin.xử lý danh sách các tệp có tên mở rộng cụ thể trong MATLAB
12
A
Trả lời
18
Sử dụng dir()
để lấy danh sách tên tệp. Bạn có thể chỉ định các ký tự đại diện.
4
Bạn có thể sử dụng
fileName=ls('*xyz')
.
biến fileName sẽ có danh sách tất cả các tên tập tin mà bạn có thể sử dụng trong vòng lặp for
25
Như những người khác đã đề cập, bạn nên sử dụng chức năng DIR liệt kê các file trong một thư mục.
Nếu bạn vẫn đang tìm kiếm, đây là một ví dụ cho thấy làm thế nào để sử dụng chức năng:
dirName = 'C:\path\to\folder'; %# folder path
files = dir(fullfile(dirName,'*.xyz')); %# list all *.xyz files
files = {files.name}'; %'# file names
data = cell(numel(files),1); %# store file contents
for i=1:numel(files)
fname = fullfile(dirName,files{i}); %# full path to file
data{i} = myLoadFunction(fname); %# load file
end
Tất nhiên, bạn sẽ phải cung cấp các chức năng mà thực sự đọc và phân tích các tập tin XYZ.
0
Dưới đây là câu trả lời của tôi:
dirName = 'E:\My Matlab\5';
[sub,fls] = subdir(dirName);
D = [];
j = 1;
for i=1:length(sub),
files{i} = dir(fullfile(sub{i},'*.xyz'));
if length(files{i})==1
D(j) = i;
files_s{j} = sub{i};
j=j+1;
end
end
varaible files_s
trả về đường dẫn mong muốn có chứa những loại dữ liệu cụ thể!
Chức năng subdir thể được tìm thấy tại địa chỉ: http://www.mathworks.com/matlabcentral/fileexchange/1492-subdir--new-
Các vấn đề liên quan
- 1. Cách lấy danh sách các tệp có phần mở rộng cụ thể trong một thư mục nhất định?
- 2. QDir.setNameFilter cách chỉ hiển thị các tệp có tiện ích mở rộng cụ thể?
- 3. Android Danh sách mở rộng
- 4. Mở rộng danh sách các danh sách bằng Python?
- 5. Làm cách nào để có danh sách các xử lý tệp đang mở theo quy trình trong C#?
- 6. Danh sách menu cây có thể mở rộng
- 7. Chỉ tên tệp có phần mở rộng trong Windows
- 8. Có thể tạo danh sách AlertDialog có thể mở rộng không?
- 9. lý do tại sao mở rộng danh sách python
- 10. Danh sách động tự động mở rộng
- 11. Có biến Emacs để tắt sao lưu các tệp có phần mở rộng cụ thể không?
- 12. MATLAB: mở rộng danh sách giá trị trong đối tượng container.Map
- 13. Xử lý danh sách trống trong mustache.js
- 14. Đọc danh sách Matlab
- 15. Xử lý một phần tệp bằng bộ tiền xử lý
- 16. Danh sách các phần mở rộng của GHC
- 17. Danh sách tất cả các tệp đang mở
- 18. Xử lý các danh sách Chuỗi lớn trong java
- 19. Làm cách nào để có danh sách tất cả các tệp có phần mở rộng nhất định từ một thư mục cụ thể?
- 20. Liệt kê tất cả các xử lý tệp đang mở?
- 21. GWT Autobean - cách xử lý danh sách?
- 22. Các phiên xử lý cho khả năng mở rộng
- 23. Có thể xóa tệp .class khỏi danh sách tệp đang mở trong IntelliJ IDEA không?
- 24. Làm cách nào để lấy danh sách tất cả các tệp có phần mở rộng ESY trong một thư mục?
- 25. Xử lý các ký tự mở rộng trong các lệnh Windows?
- 26. Danh sách trước python nhanh mở rộng
- 27. CMake/CTest & gcovr: tên tệp mở rộng?
- 28. Xử lý các tệp lớn trong Haskell
- 29. Ruby: lấy danh sách các mô-đun mở rộng?
- 30. Danh sách đầy đủ các phần mở rộng tệp hợp lệ cho hình ảnh là gì?
Hãy cẩn thận, [ls] (http://www.mathworks.de/help/techdoc/ref/ls.html) trả về một cú pháp khác nhau trên Windows hoặc Unix! –
Thao tác này sẽ ghi khoảng trống vào tên tệp và làm cho chúng có chiều dài bằng nhau, điều này không tốt. – LWZ
@LWZ: không gian không cần thiết có thể được loại bỏ bằng chức năng strtrim tiêu chuẩn. –