YStudio Y++

目录操作

Y++ / YStudio 开发文档 · 一点滴

路径:基础支持库 → 目录操作(扁平命令,非类)。

与「文件操作」中的「目录存在」「文件存在」「创建目录」「删除目录」等配合使用。

判断

命令 返回 说明
是否为目录(路径) 逻辑 路径存在且为目录(与「目录存在」相同)
是否为文件(路径) 逻辑 路径存在且为普通文件(与「文件存在」相同)
路径存在(路径) 逻辑 文件或目录均可;不区分类型
目录为空(路径) 逻辑 存在且无直接子项(不含 . / ..);不存在或非目录为假
如果 (是否为目录("D:\\data")) {
    输出("是目录")
}
如果 (路径存在(p) 且 是否为目录(p) 且 !目录为空(p)) {
    输出("非空目录")
}

复制 / 移动 / 重命名 / 清空

命令 返回 说明
复制目录(源, 目标, [覆盖]) 逻辑 递归复制;目标不存在则创建;默认不覆盖
移动目录(源, 目标) 逻辑 移动整棵目录;跨卷时自动复制后删源
重命名目录(路径, 新名称) 逻辑 同级重命名;新名称为目录名(不含路径)
清空目录(路径) 逻辑 删光子项,保留目录本身
如果 (复制目录("D:\\src", "D:\\dst", 真)) {
    输出("复制成功")
}
重命名目录("D:\\A\\old", "new")
清空目录("D:\\cache")

大小与系统目录

命令 返回 说明
取目录大小(路径) 整数 递归累计文件字节数;失败为 -1
取特定目录(类型) 文本 系统常用目录;非法类型或失败为空文本

取特定目录 · 类型:

目录
1 桌面
2 文档
3 下载
4 音乐
5 图片
6 视频
7 应用数据
8 本地应用数据
9 临时
10 程序目录
整数 n = 取目录大小("D:\\data")
输出(格式化文件大小(n))

文本 桌面 = 取特定目录(1)
文本 下载包 = 合并路径(取特定目录(3), "a.zip")
输出(取特定目录(10))  // 程序目录