Простой вопрос: я открываю файл в Matlab 7.x и хочу проверить, пуст ли он, прежде чем читать его. Как лучше всего это сделать?
Вопрос
Matlab quickie: проверьте, пуст ли текстовый файл
Ответы
Ответ 1 · рейтинг 9 · Justin Peel
Взяв некоторые знания из этого предыдущий вопрося бы сделал следующее
s = dir('c:\somefile.txt');
if s.bytes == 0
% empty file
else
% open the file and read it
end;
Я предположил, что под пустым вы имели в виду, что в файле действительно нет ничего, включая символы новой строки. Если под пустым вы подразумеваете только символы новой строки, вам следует продолжить свое решение.
Ответ 2 · johndashen
понятно:
fid = fopen(fil);
if all(fgetl(fid) == -1)
% file is empty
else
fseek(fid,0,-1); % rewind it
end
Ответ 3 · AVB
Это самый чистый способ, о котором я могу думать:
if fseek(fileID, 1, 'bof') == -1
% empty file
else
rewind(fileID)
% ready to read
end
Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.
Похожие материалы
- Как получить доступ к файловой системе из EJB 3?
- Как создать новую папку и сохранять в нее файлы?
- Что такое ошибка EOFError при вводе-выводе файлов Ruby?
- Как я могу установить размер буфера чтения файла в Perl, чтобы оптимизировать его для больших файлов?
- Обучение работе с MATLAB
- Использование Matlab writematrix в нескольких сценариях для записи в один и тот же csv