# ty_open


在合适的应用程序中打开文件

函数库: TyBase

# 语法

A = ty_open(name)

# 说明

A = ty_open(name) 在适当的应用程序中打开指定的文件或变量。 示例

您可以通过 openxxx 的形式(其中 xxx 为文件扩展名)定义您自己的文件处理函数,以此扩展 ty_open 的功能。例如,如果您创建了函数 opentxt,则 ty_open 函数将调用 opentxt 来处理带有 .txt 扩展名的任何文件。ty_open 函数将返回您的函数所定义的任何单个输出。


如果 name 是 MAT 文件,A = ty_open(name) 将返回字典;否则,ty_open 将返回空。要获得更高的灵活性和更多选项,请使用 load 函数打开 MAT 文件。

# 示例

打开文件

在编辑器中打开文件 2-打开不在路径中的文件.jl。Syslab 会打开文件 /examples/resources/2-打开不在路径中的文件.jl。但是,如果在 Syslab 路径中 /examples/resources 之上的文件夹中存在名为 2-打开不在路径中的文件.jl 的文件,Syslab 将打开该文件。

using TyBase
file_path = pkgdir(TyBase) * "/examples/FileSystem/open/2-打开不在路径中的文件.jl"
ty_open(file_path)
打开不在路径中的文件

通过指定文件的完整路径,可打开不在 Syslab 路径中的文件。如果文件不存在,Syslab 将显示错误消息。

using TyBase
ty_open("C:/temp/data.jl")
创建处理扩展名的函数

创建名为 opentxt 的函数,以处理具有 .txt 扩展名的文件。

创建函数 opentxt。

using TyBase
function opentxt(filename)
    filepath, name, ext = fileparts(filename)
    fprintf("You have requested file: %s\n", string(name, ext))

    if isfile(filename)
        if ext == ".txt"
            fprintf("Opening in Syslab Editor: %s\n", string(name, ext))
            open_in_syslab(filename)
        else
            fprintf("Opening in Other Editor: %s\n", string(name, ext))
            open_with_other(filename)
        end
    else
        warning("File was not found: %s", string(name, ext))
    end
end

创建文本文件 myTestFile.txt。

myTestFile = [1, 2, 3, 4]
save("myTestFile.txt"; myTestFile);

读取该文件中的数据。ty_open 函数将调用函数 opentxt 来打开该文件。

ty_open("myTestFile.txt");

# 输入参数

name - 文件或变量的名称
字符串

文件或变量的名称,指定为字符串。如果 name 不包含扩展名,Syslab 将根据函数优先顺序来搜索变量和文件。如果 name 是变量,ty_open 函数将在变量编辑器中打开它。否则,ty_open 函数将根据文件扩展名执行以下操作之一。

类型 说明
.jl 在 Syslab 编辑器中打开代码文件。
.mat 使用语法 A = ty_open(name) 调用时,返回结构体 A 中的变量。
.doc* 在 Microsoft® Word 中打开文档。
.exe 运行可执行文件(仅在 Windows® 系统上)。
.pdf 在 Adobe® Acrobat® 中打开文档。
.ppt* 在 Microsoft PowerPoint® 中打开文档。
.xls* 在Microsoft Excel®中打开表格。
.htm 或 .html 在 Syslab 浏览器中打开文档。

数据类型: String

# 另请参阅

load | which