写入文件
在较早版本中,这个组件名为 Save File。
Write File 组件用于把其他组件生成的数据写入文件。 它支持多种文件格式,并可将文件保存到 SkillFlaw 存储、AWS S3、Google Drive 或本地文件系统。
要在流程中配置并使用 Write File 组件,请按以下步骤操作:
-
将其他组件输出的
DataFrame、Data或Message连接到 Write File 的 Input 端口。如果你想把同一份数据生成多个文件、以不同格式保存,或写入多个存储位置,可以把同一个输出同时连接到多个 Write File 组件。
-
点击 Storage Location,选择 Local、AWS 或 Google Drive。 如有需要,请填写云存储凭证。 详情请参阅配置文件存储。
-
在 File Name 中输入文件名,必要时可一并填写路径。
File Name 参数决定文件的保存位置。 它既可以只写文件名,也可以写完整路径:
-
默认位置:如果只填写文件名,文件会保存到当前本地存储命名空间下,也就是 SkillFlaw 配置的存储目录中。 在默认本地环境下,这通常位于
SKILLFLAW_CONFIG_DIR下,例如 macOS 中可能是~/Library/Caches/skillflaw之类的路径。 -
子目录:如果你想把文件保存在子目录中,可以直接在 File Name 里写 路径。 若子目录不存在,SkillFlaw 会自动创建。 例如,
files/my_file会在当前本地存储命名空间的files子目录中创建my_file。 -
绝对路径或相对路径:如果你想把文件保存到其他本地位置,也可以直接填写绝对路径或相对路径。 例如,
~/Desktop/my_file会把文件保存到桌面。
文件名里不要包含扩展名。 如果包含,扩展名会被当成文件名的一部分,而不会覆盖 File Format 参数的设置。
-
-
选择所需的 File Format,然后点击 Close。
可选的 File Format 会根据输入数据类型变化:
-
DataFrame可保存为 CSV(默认)、Excel(需要openpyxl自定义依赖)、JSON(回退默认)或 Markdown。 -
Data可保存为 CSV、Excel(需要openpyxl自定义依赖)、JSON(默认)或 Markdown。 -
Message可保存为 TXT、JSON(默认)或 Markdown。
允许覆盖如果一个或多个流程中的多个 Write File 组件使用了相同的文件名、路径与扩展名,那么最终文件只会保留最近一次运行写入的数据。 SkillFlaw 不会阻止对现有文件的覆盖。 如果你不希望被覆盖,请确保文件名与路径唯一。
-
-
测试 Write File 组件时,点击 Run component,再点击 Inspect output,查看文件最终保存的路径。
该组件的直接输出是一个
Message,其中包含原始数据类型、文件名和扩展名,以及根据 File Name 参数得到的文件绝对路径。 例如:_10DataFrame saved successfully as 'my_file.csv' at /Users/user.name/Library/Caches/skillflaw/<FLOW_ID>/my_file.csv如果 File Name 中包含子目录或其他非默认路径,这些信息也会反映在
Message输出中。 例如,如果文件名是~/Desktop/my_file,则某个 CSV 输出可能类似:_10DataFrame saved successfully as '/Users/user.name/Desktop/my_file.csv' at /Users/user.name/Desktop/my_file.csv -
可选:如果你想在后续流程中继续使用已保存的文件,需要通过 API 调用或其他组件根据这个文件路径再次读取文件。