MATLAB中是否有任何函数可以确定可用磁盘空间?我创建了一个使用MS-DOS dir命令并解析其输出的最后一行的临时函数.我认为它的工作符合预期,但我想(1)它不适用于其他系统(OS X,Linux,Unix,etx.)和(2)也可能在不同的Windows版本中失败.也许有人可以改进它以使其更通用?谢谢
代码:
function out = freediskspace
[~,d] = dos('dir');
C = textscan(d,'%s','Delimiter','\n'); C = C{1}{end};
C = strrep(C,',','');
r = regexp(C,'\d+','match');
out = str2double(r{2});
end
Run Code Online (Sandbox Code Playgroud)
Chr*_*lor 12
您可以使用Java调用(这适用于Linux和Windows - 我没有检查OSX,但应该没问题).
function free = getFreeSpace(path)
if nargin < 1 || isempty(path)
path= '.';
end
free = java.io.File(path).getFreeSpace();
end
Run Code Online (Sandbox Code Playgroud)
例如,
>> f = getFreeSpace('C:\')
f =
3.9338e+11
Run Code Online (Sandbox Code Playgroud)