- Overview - 综述
- Q&A - 常见问题
- App - 应用
- Console - 控制台
- CoordinatesBasedAutomation - 基于坐标的操作
- Device - 设备
- Dialogs - 对话框
- Engines - 脚本引擎
- Events - 事件与监听
- Floaty - 悬浮窗
- Files - 文件系统
- Globals - 一般全局函数
- Http - HTTP
- Images - 图片与图色处理
- Keys - 按键模拟
- Media - 多媒体
- Modules - 模块
- WidgetsBasedAutomation - 基于控件的操作
- Sensors - 传感器
- Shell - Shell命令
- Storages - 本地存储
- Threads - 多线程
- Timers - 定时器
- UI - 用户界面
- Work with Java - 调用Java API
Auto.js 4.1.0 文档
目录
-
Files#
#返回路径path是否是文件。
log(files.isDir("/sdcard/文件夹/")); //返回false log(files.isDir("/sdcard/文件.txt")); //返回truefiles.isDir(path)#
返回路径path是否是文件夹。
log(files.isDir("/sdcard/文件夹/")); //返回true log(files.isDir("/sdcard/文件.txt")); //返回falsefiles.isEmptyDir(path)#
返回文件夹path是否为空文件夹。如果该路径并非文件夹,则直接返回
false。files.join(parent, child)#
连接两个路径并返回,例如
files.join("/sdcard/", "1.txt")返回"/sdcard/1.txt"。files.create(path)#
创建一个文件或文件夹并返回是否创建成功。如果文件已经存在,则直接返回
false。files.create("/sdcard/新文件夹/");files.createWithDirs(path)#
创建一个文件或文件夹并返回是否创建成功。如果文件所在文件夹不存在,则先创建他所在的一系列文件夹。如果文件已经存在,则直接返回
false。files.createWithDirs("/sdcard/新文件夹/新文件夹/新文件夹/1.txt");files.exists(path)#
返回在路径path处的文件是否存在。
files.ensureDir(path)#
path<string> 路径
确保路径path所在的文件夹存在。如果该路径所在文件夹不存在,则创建该文件夹。
例如对于路径"/sdcard/Download/ABC/1.txt",如果/Download/文件夹不存在,则会先创建Download,再创建ABC文件夹。
files.read(path[, encoding = "utf-8"])#
读取文本文件path的所有内容并返回。如果文件不存在,则抛出
FileNotFoundException。log(files.read("/sdcard/1.txt"));files.readBytes(path)#
path<string> 路径- 返回 <byte[]>
读取文件path的所有内容并返回一个字节数组。如果文件不存在,则抛出
FileNotFoundException。注意,该数组是Java的数组,不具有JavaScript数组的forEach, slice等函数。
一个以16进制形式打印文件的例子如下:
var data = files.readBytes("/sdcard/1.png"); var sb = new java.lang.StringBuilder(); for(var i = 0; i < data.length; i++){ sb.append(data[i].toString(16)); } log(sb.toString());files.write(path, text[, encoding = "utf-8"])#
把text写入到文件path中。如果文件存在则覆盖,不存在则创建。
var text = "文件内容"; //写入文件 files.write("/sdcard/1.txt", text); //用其他应用查看文件 app.viewFile("/sdcard/1.txt");files.writeBytes(path, bytes)#
path<string> 路径bytes<byte[]> 字节数组,要写入的二进制数据
把bytes写入到文件path中。如果文件存在则覆盖,不存在则创建。
files.append(path, text[, encoding = 'utf-8'])#
把text追加到文件path的末尾。如果文件不存在则创建。
var text = "追加的文件内容"; files.append("/sdcard/1.txt", text); files.append("/sdcard/1.txt", text); //用其他应用查看文件 app.viewFile("/sdcard/1.txt");files.appendBytes(path, text[, encoding = 'utf-8'])#
path<string> 路径bytes<byte[]> 字节数组,要写入的二进制数据
把bytes追加到文件path的末尾。如果文件不存在则创建。
files.copy(fromPath, toPath)#
复制文件,返回是否复制成功。例如
files.copy("/sdcard/1.txt", "/sdcard/Download/1.txt")。files.move(fromPath, toPath)#
移动文件,返回是否移动成功。例如
files.move("/sdcard/1.txt", "/sdcard/Download/1.txt")会把1.txt文件从sd卡根目录移动到Download文件夹。files.rename(path, newName)#
重命名文件,并返回是否重命名成功。例如
files.rename("/sdcard/1.txt", "2.txt")。files.renameWithoutExtension(path, newName)#
重命名文件,不包含拓展名,并返回是否重命名成功。例如
files.rename("/sdcard/1.txt", "2")会把"1.txt"重命名为"2.txt"。files.getName(path)#
返回文件的文件名。例如
files.getName("/sdcard/1.txt")返回"1.txt"。files.getNameWithoutExtension(path)#
返回不含拓展名的文件的文件名。例如
files.getName("/sdcard/1.txt")返回"1"。files.getExtension(path)#
返回文件的拓展名。例如
files.getExtension("/sdcard/1.txt")返回"txt"。files.remove(path)#
删除文件或空文件夹,返回是否删除成功。
files.removeDir(path)#
删除文件夹,如果文件夹不为空,则删除该文件夹的所有内容再删除该文件夹,返回是否全部删除成功。
files.getSdcardPath()#
- 返回 <string>
返回SD卡路径。所谓SD卡,即外部存储器。
files.cwd()#
- 返回 <string>
返回脚本的"当前工作文件夹路径"。该路径指的是,如果脚本本身为脚本文件,则返回这个脚本文件所在目录;否则返回
null获取其他设定路径。例如,对于脚本文件"/sdcard/脚本/1.js"运行
files.cwd()返回"/sdcard/脚本/"。files.path(relativePath)#
返回相对路径对应的绝对路径。例如
files.path("./1.png"),如果运行这个语句的脚本位于文件夹"/sdcard/脚本/"中,则返回"/sdcard/脚本/1.png"。files.listDir(path[, filter])#
path<string> 路径filter<Function> 过滤函数,可选。接收一个string参数(文件名),返回一个boolean值。
列出文件夹path下的满足条件的文件和文件夹的名称的数组。如果不加filter参数,则返回所有文件和文件夹。
列出sdcard目录下所有文件和文件夹为:
var arr = files.listDir("/sdcard/"); log(arr);列出脚本目录下所有js脚本文件为:
var dir = "/sdcard/脚本/"; var jsFiles = files.listDir(dir, function(name){ return name.endsWith(".js") && files.isFile(files.join(dir, name)); }); log(jsFiles);open(path[, mode = "r", encoding = "utf-8", bufferSize = 8192])#
打开一个文件。根据打开模式返回不同的文件对象。包括:
- "r": 返回一个ReadableTextFile对象。
- "w", "a": 返回一个WritableTextFile对象。
对于"w"模式,如果文件并不存在,则会创建一个,已存在则会清空该文件内容;其他模式文件不存在会抛出FileNotFoundException。
ReadableTextFile#
可读文件对象。
ReadableTextFile.read()#
返回该文件剩余的所有内容的字符串。
ReadableTextFile.read(maxCount)#
maxCount<Number> 最大读取的字符数量
读取该文件接下来最长为maxCount的字符串并返回。即使文件剩余内容不足maxCount也不会出错。
ReadableTextFile.readline()#
读取一行并返回(不包含换行符)。
ReadableTextFile.readlines()#
读取剩余的所有行,并返回它们按顺序组成的字符串数组。
close()#
关闭该文件。
打开一个文件不再使用时务必关闭
PWritableTextFile#
可写文件对象。
PWritableTextFile.write(text)#
text<string> 文本
把文本内容text写入到文件中。
PWritableTextFile.writeline(line)#
text<string> 文本
把文本line写入到文件中并写入一个换行符。
PWritableTextFile.writelines(lines)#
lines<Array> 字符串数组
把很多行写入到文件中....
PWritableTextFile.flush()#
把缓冲区内容输出到文件中。
PWritableTextFile.close()#
关闭文件。同时会被缓冲区内容输出到文件。
打开一个文件写入后,不再使用时务必关闭,否则文件可能会丢失