Main Content

指定文件名称

构建有效路径和文件名称

指定路径名称

路径名称可以指定文件位置,例如 C:\work\my_data(在 Microsoft® Windows® 平台上)或 /usr/work/my_data(在 Linux®Mac 平台上)。如果在访问文件时不指定路径名称,MATLAB® 将首先在当前文件夹中进行搜索。如要指示特定位置中的文件,请指定路径名称。

路径名称设定不同,具体取决于运行 MATLAB 的平台。使用 fullfile 函数可按照任何平台上都能使用的语句来构造路径名称。当您需要将代码提供给在不同平台上的人使用时,该函数尤其有用。

fullfile 在必要的地方插入平台特定的文件分隔符。文件分隔符是区分路径名称中一个文件夹层级与另一个层级的符号。正斜杠 (/) 在任何平台上都是有效的分隔符。反斜杠 (\) 仅在 Microsoft Windows 平台上有效。在文件夹的完整路径中,最后的斜杠是可选的。在命令行窗口中键入 filesep,确定能在您的平台上使用的正确的文件分隔符。

要确定 MATLAB 当前所运行的平台,请使用 ismacispcisunix 函数。

文件和文件夹名称中的字符

文件名必须以字母开头,可以包含字母、数字或下划线。

避免在路径名称中使用变音符号或音调符号之类的注音字符。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.mmyfolder 文件夹中的 myfile.m 文件,其中 myfolder 与当前文件夹的级别相同。在路径的开头每重复一次 ../ 都会将文件夹上升一个级别。

提示

如果编辑器中打开并停靠了多个文档,您可以将其中任何文档的绝对路径复制到剪贴板。当您需要在另一 MATLAB 工具或外部应用程序中指定绝对路径时,这会非常有用。右键点击文档选项卡,然后选择将完整路径复制到剪贴板

MATLAB 中的部分路径名称

部分路径名称是 MATLAB 搜索路径中某个位置的完整路径名称的最后部分。某些函数接受部分路径名称。

部分路径名称的例子有:matfun/traceprivate/canceldemos/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

另请参阅

| | | | |

相关主题