16.2. 文件变量


概述

每当路由以 File 或 FTP 消费者端点开头时,都可以使用文件变量,这意味着底层消息正文是 java.io.File 类型。通过 file 变量,您可以访问文件路径名称的各个部分,几乎就像您调用 java.io.File 类的方法(实际上,文件语言从文件或 FTP 端点设置的消息标头中提取所需的信息)。

起始目录

有些文件变量返回路径相对于 起始目录 定义,而这是在 File 或 FTP 端点中指定的目录。例如,以下文件使用者端点具有起始目录 ./filetransfer (相对路径):

file:filetransfer

以下 FTP 使用者端点具有起始目录 ./ftptransfer (相对路径):

ftp://myhost:2100/ftptransfer

文件变量的命名规则

通常,文件变量使用 java.io.File 类上的对应方法命名。例如,file:absolute 变量提供 java.io.File.getAbsolute () 方法返回的值。

注意

但是,这种命名规则不严格遵循。例如,没有这样的 方法,如 java.io.File.getSize ()

变量表

表 16.1 “文件语言的变量” 显示文件语言支持的所有变量。

表 16.1. 文件语言的变量
变量类型描述

file:name

字符串

相对于起始目录的路径名。

file:name.ext

字符串

文件扩展名(遵循路径名称中最后一个 . 字符之后的字符)。支持具有多个点的文件扩展,如 .tar.gz。

file:name.ext.single

字符串

文件扩展名(遵循路径名称中最后一个 . 字符之后的字符)。如果文件扩展有多个点,则此表达式仅返回最后一个部分。

file:name.noext

字符串

相对于起始目录的路径名,省略文件扩展名。

file:name.noext.single

字符串

相对于起始目录的路径名,省略文件扩展名。如果文件扩展有多个点,则此表达式只剥离最后一个部分,而保留其他部分。

file:onlyname

字符串

路径名称的最终部分。也就是说,不带父目录路径的文件名。

file:onlyname.noext

字符串

路径名称的最后段,省略文件扩展名。

file:onlyname.noext.single

字符串

路径名称的最后段,省略文件扩展名。如果文件扩展有多个点,则此表达式只剥离最后一个部分,而保留其他部分。

file:ext

字符串

文件扩展名(与 file:name.ext相同)。

file:parent

字符串

父目录的路径名,包括路径中的起始目录。

file:path

字符串

文件路径名,包括路径中起始目录。

file:absolute

布尔值

true,如果起始目录被指定为绝对路径,则为 false,否则为。

file:absolute.path

字符串

文件的绝对路径名。

file:length

Long

引用的文件的大小。

file:size

Long

file:length 相同。

file:modified

java.util.Date

最后修改的日期.

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.