普通小游戏开发
API
开放能力
数据分析
视频拍摄器
多端支持

FileSystemManager.accessSync

基础库 1.15.0 开始支持本方法。

判断文件/目录是否存在。

语法

FileSystemManager.accessSync(path)

参数说明

path

待检测的文件或者目录地址

path 为 string 类型

  • 用户目录以 ttfile://user 开头
  • 临时目录以 ttfile://temp 开头
  • 检测包内目录不需要前缀, 例如 fileSystemManager.accessSync("game.js")

返回值

没有 throw 异常表示目录或者文件存在, throw Error 则表示不存在

错误码

错误码说明:

errNoerrMsg说明最低支持版本
20000accessSync:fail path is invalidpath 参数错误1.99.0
20001accessSync:fail param should be xxx, but got xxx参数校验错误1.99.0
21101accessSync:fail permission denied, accessSync {path_value}访问路径不可读1.99.0
21102accessSync:fail no such file or directory, accessSync {path_value}访问文件不存在1.99.0

代码示例

开发者工具中预览

判断临时目录路径是否存在

const fileSystemManager = tt.getFileSystemManager();
const path = `ttfile://temp/some-path`; // 判断的地址

try {
  fileSystemManager.accessSync(path);
  console.log(`${path} 地址存在`);
} catch (err) {
  console.log(`${path} 地址不存在或其他错误`, res.errMsg);
}

判断用户目录下路径是否存在

const fileSystemManager = tt.getFileSystemManager();
const path = `ttfile://user/some-path`; // 判断的地址

try {
  fileSystemManager.accessSync(path);
  console.log(`${path} 地址存在`);
} catch (err) {
  console.log(`${path} 地址不存在或其他错误`, res.errMsg);
}

判断包内路径是否存在

const fileSystemManager = tt.getFileSystemManager();
// 包内路径不需要 `ttfile://` 协议
const path = "app.js"; // 判断的地址

try {
  fileSystemManager.accessSync(path);
  console.log(`${path} 地址存在`);
} catch (err) {
  console.log(`${path} 地址不存在或其他错误`, res.errMsg);
}

Bug & Tip

  • Tip: accessSync 可以用于 用户目录(ttfile://user) 临时目录(ttfile://temp) 以及 包内目录(访问包内目录不需要加额外协议头)
点击纠错
评价此篇文档