Main Content

保存和备份代码

您可以使用几种方法在编辑器和实时编辑器中保存文件。在编辑器中,您还可以创建文件的备份副本。创建文件的备份副本可以确保在对文件进行更改之前,您拥有文件的已知工作版本,并且对于在系统出现问题后还原丢失的更改也很有用。

根据您的需要,您还可以控制您保存的文件的编码和缓存方式。

保存代码

当您在编辑器或实时编辑器中修改文件时,MATLAB® 通过在文档选项卡中的文件名旁边显示星号 (*),指示文件中存在未保存的更改。

Unsaved file showing an asterisk next to the file name in the document tab.

要保存文件,请转至编辑器实时编辑器选项卡,并在文件部分中,点击 保存

要更改文件的名称、位置或类型,请选择保存 > 另存为。例如,要将实时脚本保存为纯代码文件 (.m),请在实时编辑器选项卡的文件部分中,选择保存 > 另存为。在出现的对话框中,选择 MATLAB Code files (UTF-8) (*.m) 作为保存类型,然后点击保存

备份代码

您可以在编辑器中创建文件的备份副本。创建文件的备份副本可确保在对文件进行更改之前,您拥有该文件的已知工作版本。要创建文件的备份副本,请在编辑器选项卡的文件部分中,选择保存 > 将副本另存为。此选项在实时编辑器或MATLAB Online™ 中不可用。

此外,当您在编辑器中修改文件时,MATLAB 会自动创建文件的备份副本。如果由于系统问题而丢失对文件的更改,可以使用自动创建的文件备份副本来还原更改。

默认情况下,MATLAB 每五分钟保存一次修改文件的备份副本,使用相同的文件名,但扩展名为 .asv。例如,filename.m 的备份文件名为 filename.asv。如果您丢失对文件的更改,可以通过打开文件的备份副本 filename.asv,并将其另存为 filename.m,来还原未保存的更改。

要更改 MATLAB 保存文件备份副本的方式和时间,请在主页选项卡的环境部分中,点击 预设。然后,选择 MATLAB > 编辑器/调试器 > 备份文件。您可以指定:

  • 正在编辑的文件备份副本的频率。

  • 创建文件备份副本时使用的文件扩展名。

  • 保存文件备份副本的位置。

  • 在编辑器中关闭对应的源文件时,是否自动删除文件的备份副本。

有关可用选项的详细信息,请参阅编辑器/调试器预设项中的“备份文件”预设项。

MATLAB Online 中,每次在编辑器中保存代码文件时,MATLAB 都会将代码文件的内容存储在版本历史记录中。有关还原在 MATLAB Online 中文件的以前版本的详细信息,请参阅访问 MATLAB Online 中的文件

MATLAB 不会自动创建在实时编辑器中修改的文件的备份。

有关保存文件的建议

MathWorks® 建议您将创建的文件保存到 matlabroot 文件夹树之外的文件夹中,其中 matlabroot 是您在命令行窗口中键入 matlabroot 时返回的文件夹。同样,当您编辑从 MathWorks 获得的文件时,请将编辑后的版本保存在 matlabroot 文件夹树之外。如果您将文件保存在 matlabroot 文件夹树中,则当您安装新版本的 MATLAB 时,这些文件可能会被覆盖。

如果您确实将文件保存在 matlabroot 文件夹树中,您可能需要采取额外的步骤才能使您的更改生效。在每个 MATLAB 会话开始时,MATLAB 会将 matlabroot 文件夹树中的文件位置加载并缓存在内存中。因此,如果您使用外部编辑器或文件系统操作在 matlabroot 文件夹树中添加、删除或更改文件,则必须更新缓存,以便 MATLAB 能够识别您所做的更改。有关详细信息,请参阅MATLAB 中的工具箱路径缓存

文件编码

从 R2020a 开始,当编辑器保存新的具有 .m 扩展名的 MATLAB 代码文件(如脚本或函数)时,它使用不带字节顺序标记 (BOM) 的 UTF-8。除非从“另存为”对话框中选择了不同编码,否则编辑器会以其当前编码保存现有文件。例如,要使用传统的区域设置特定编码保存文件以与较早版本的 MATLAB 兼容,请在编辑器选项卡上的文件部分中,选择保存 > 另存为。在出现的对话框中,从保存类型选项中选择所需的编码。

当前编码显示在编辑器状态栏的文件名旁边;如果编辑器窗口处于停靠状态,则显示在桌面状态栏旁边。

相关主题