board — 设备文件操作

MicroPython 设备文件系统的查询、读写、下载、重命名与删除操作。

self.board 提供设备(开发板)文件系统的操作能力。设备需通过串口或 WebREPL 连接,相关操作作用于设备上的文件系统(如 MicroPython 设备根文件系统)。

self.board 的读取类操作需要 board.read 权限,写入类操作需要 board.write 权限。请在插件清单中声明相应权限。

callback 的方法为异步请求;不带 callback 的方法为即发即弃(fire-and-forget),立即返回。

目录与节点查询

方法说明
get_dir_list(path, callback=None)获取设备目录下的文件列表
get_root_dir(callback=None)获取设备根目录路径
get_focus_file_node(callback=None)获取设备文件面板当前选中的文件节点
get_focus_folder_node(callback=None)获取设备文件面板当前选中的文件夹节点

get_dir_list(path, callback=None)

获取设备指定目录下的文件列表。

self.board.get_dir_list("/", lambda **cb: print(cb))

参数:

  • path (str) — 目录路径

get_root_dir(callback=None)

获取设备根目录路径。

self.board.get_root_dir(lambda **cb: print(cb.get("path", "")))

回调数据:{"path": "/"}

get_focus_file_node(callback=None)

获取设备文件面板中当前选中的文件节点。

self.board.get_focus_file_node(lambda **cb: print(cb))

get_focus_folder_node(callback=None)

获取设备文件面板中当前选中的文件夹节点。

self.board.get_focus_folder_node(lambda **cb: print(cb))

即发即弃操作

以下方法不接收回调,调用后立即返回:

方法说明
open_file(path)在编辑器中打开设备文件
download_selected_board_item()下载选中的设备文件到本地
rename(path, new_name)重命名设备文件或文件夹
delete_file(path)删除设备文件
delete_folder(path)删除设备文件夹

open_file(path)

在编辑器中打开设备文件。

self.board.open_file("/main.py")

参数:

  • path (str) — 设备文件路径

download_selected_board_item()

下载设备文件面板中当前选中的文件到本地。

self.board.download_selected_board_item()

rename(path, new_name)

重命名设备文件或文件夹。

self.board.rename("/old.py", "new.py")

参数:

  • path (str) — 原路径
  • new_name (str) — 新名称

delete_file(path)

删除设备文件。

self.board.delete_file("/old_file.py")

参数:

  • path (str) — 文件路径

delete_folder(path)

删除设备文件夹。

self.board.delete_folder("/old_folder")

参数:

  • path (str) — 文件夹路径

设备读写

方法说明
is_file(path, callback=None)检查设备路径是否为文件
is_directory(path, callback=None)检查设备路径是否为目录
read_file(path, callback=None)读取设备文件内容
write_file(path, content, callback=None)写入设备文件内容
exists(path, callback=None)检查设备路径是否存在

is_file(path, callback=None)

检查设备路径是否为文件。

self.board.is_file("/main.py", lambda **cb: print(cb))

参数:

  • path (str) — 路径

is_directory(path, callback=None)

检查设备路径是否为目录。

self.board.is_directory("/lib", lambda **cb: print(cb))

参数:

  • path (str) — 路径

read_file(path, callback=None)

读取设备文件内容。

self.board.read_file(
    "/main.py", lambda **cb: print(cb.get("content", ""))
)

参数:

  • path (str) — 文件路径

回调数据:{"content": "文件内容"}

write_file(path, content, callback=None)

写入设备文件内容。

self.board.write_file("/main.py", "print('hello')")

参数:

  • path (str) — 文件路径
  • content (str) — 文件内容

exists(path, callback=None)

检查设备路径是否存在。

self.board.exists("/main.py", lambda **cb: print(cb))

参数:

  • path (str) — 路径

路径映射与下载

方法说明
get_corresponding_file_path(path, callback=None)获取设备文件对应的本地项目文件路径
download_file(board_path, local_path, callback=None)下载单个设备文件到本地

get_corresponding_file_path(path, callback=None)

获取设备文件对应的本地项目文件路径,用于建立本地与设备文件的对应关系。

self.board.get_corresponding_file_path(
    "/main.py", lambda **cb: print(cb.get("path", ""))
)

参数:

  • path (str) — 设备文件路径

download_file(board_path, local_path, callback=None)

将设备文件下载到本地指定路径。

self.board.download_file("/main.py", "/local/main.py")

参数:

  • board_path (str) — 设备文件路径
  • local_path (str) — 本地目标路径

On this page