指定文件名称
构建有效路径和文件名称
指定路径名称
路径名称可以指定文件位置,例如 C:\work\my_data
(在 Microsoft® Windows® 平台上)或 /usr/work/my_data
(在 Linux® 或 Mac 平台上)。如果在访问文件时不指定路径名称,MATLAB® 将首先在当前文件夹中进行搜索。如要指示特定位置中的文件,请指定路径名称。
路径名称设定不同,具体取决于运行 MATLAB 的平台。使用 fullfile
函数可按照任何平台上都能使用的语句来构造路径名称。当您需要将代码提供给在不同平台上的人使用时,该函数尤其有用。
fullfile
在必要的地方插入平台特定的文件分隔符。文件分隔符是区分路径名称中一个文件夹层级与另一个层级的符号。正斜杠 (/) 在任何平台上都是有效的分隔符。反斜杠 (\) 仅在 Microsoft Windows 平台上有效。在文件夹的完整路径中,最后的斜杠是可选的。在命令行窗口中键入 filesep
,确定能在您的平台上使用的正确的文件分隔符。
要确定 MATLAB 当前所运行的平台,请使用 ismac
、ispc
和 isunix
函数。
文件和文件夹名称中的字符
文件名必须以字母开头,可以包含字母、数字或下划线。
避免在路径名称中使用变音符号或音调符号之类的注音字符。MATLAB 可能无法识别该路径。此外,尝试将文件保存在此类路径下可能会产生不可预测的行为。
如果路径或文件名称包含空格,请将输入括在单引号中。例如:
load 'filename with space.mat'
load('filename with space.mat')
绝对路径名称和相对路径名称
MATLAB 始终接受绝对路径名称(也称为完整路径名称),例如 I:/Documents/My_Files
或 /users/myuserid/Homework/myfile.m
。绝对路径名称可以由以下任一项开始:
UNC 路径
'\\'
。驱动器号,例如在 Microsoft Windows 平台上是
C:\
。在 Linux 平台上是
'/'
字符。
一些 MATLAB 函数还支持相对路径名称。除非另有说明,否则路径名称相对于当前文件夹。例如:
myfile.m
指的是当前文件夹中的myfile.m
文件。myfolder
指的是当前文件夹中的myfolder
文件夹。../myfolder/myfile.m
指myfolder
文件夹中的myfile.m
文件,其中myfolder
与当前文件夹的级别相同。在路径的开头每重复一次../
都会将文件夹上升一个级别。
提示
如果编辑器中打开并停靠了多个文档,您可以将其中任何文档的绝对路径复制到剪贴板。当您需要在另一 MATLAB 工具或外部应用程序中指定绝对路径时,这会非常有用。右键点击文档选项卡,然后选择将完整路径复制到剪贴板。
MATLAB 中的部分路径名称
部分路径名称是 MATLAB 搜索路径中某个位置的完整路径名称的最后部分。某些函数接受部分路径名称。
部分路径名称的例子有:matfun/trace
、private/cancel
和 demos/clown.mat
。
使用部分路径名称:
指定与 MATLAB 的安装位置无关的位置。
当多个工具箱中包含具有该名称的函数时,在特定工具箱中找到函数。例如,要打开 Database Toolbox™ 产品中
set
函数的文件,请键入:open database/set
找到方法文件。例如,要查看时间序列对象是否存在
plot
方法,请键入:exist timeseries/plot
在方法文件夹名称中指定 at 符号字符 (
@
) 是可选的。找到私有文件和方法文件,这些文件有时是隐藏的。
确保指定足够的路径名称以使部分路径名称是唯一的。
MATLAB 中的最大路径名称长度
路径名称允许的最大长度取决于您的平台。
例如在 Microsoft Windows 平台中:
最大长度称为
MAX_PATH
。不能使用超过 260 个字符的绝对路径名称。
相对路径名称所使用的字符可能需要小于 260 个。在 Windows 操作系统处理相对路径名称时,它可以生成较长的绝对路径名称,可能会超过最大长度。
如果您在使用长路径名称时获得意外结果,请改用相对路径名称。或者,使用较短的文件夹名称和文件名称。
文件名区分大小写
通常,指定文件名称时最好准确指定路径和大小写。
调用函数时区分大小写
可以通过指定文件名而不指定文件扩展名来调用函数文件。如果 MATLAB 在搜索路径上找不到区分大小写的匹配项,则将返回错误。默认情况下,MATLAB 会建议一个大小写正确的函数。
当多个文件具有相同的名称时,MATLAB 将按照优先级规则确定调用哪一个函数。有关详细信息,请参阅函数优先顺序。
加载和保存文件时区分大小写
Linux 平台 - 文件名称区分大小写。
加载或读取文件时,请使用正确的大小写指定文件名称。
保存或写入文件时,MATLAB 将按所指定的大小写保存文件。同一文件夹中可以存在两个名称相同但大小写不同的文件。
Windows 平台 — 文件名称区分大小写。Windows 操作系统将两个同名文件视为同一文件(不区分大小写)。因此,不能在同一文件夹中拥有两个仅大小写不同的同名文件。
在加载或读取文件时,MATLAB 将访问搜索路径中层级较高的具有指定名称的文件,不考虑大小写。例如,如果您尝试加载
MYFILE
并且myfile.mat
在搜索路径中高于MYFILE.MAT
,MATLAB 会加载myfile.mat
,而不警告您存在大小写不匹配的情况。当保存或写入文件时,如果指定的文件名称在文件夹中已经存在,则 MATLAB 将直接访问现有文件而不发出警告。例如,如果使用
save
函数将数据保存到名为myfile
的文件中,而文件夹中已经存在MYFILE.mat
,则数据将替代MYFILE.mat
的内容。但文件名称仍然为MYFILE.mat
。
另请参阅
filesep
| fullfile
| which
| ismac
| ispc
| isunix