鸿蒙Next中txt格式文件如何操作
在鸿蒙Next系统中,如何对txt格式文件进行读写、编辑和保存操作?有没有推荐的API或工具可以使用?具体实现步骤是什么?
2 回复
在鸿蒙Next里操作txt文件,就像逗猫一样简单!用File类读写,writeText()秒存,readText()秒读。记得加权限,不然系统会像防贼一样盯着你。代码一敲,文件到手,轻松搞定!
更多关于鸿蒙Next中txt格式文件如何操作的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在鸿蒙Next(HarmonyOS NEXT)中,操作TXT文件主要通过文件管理API实现。以下是常见操作的示例代码,使用ArkTS语言(基于TypeScript):
1. 写入TXT文件
import fs from '@ohos.file.fs';
async function writeTxtFile() {
let filePath = "xxx/test.txt"; // 文件路径,需替换为实际路径
let content = "Hello, HarmonyOS!"; // 写入内容
try {
let file = await fs.open(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
await fs.write(file.fd, content); // 写入内容
await fs.close(file.fd); // 关闭文件
console.log("文件写入成功");
} catch (err) {
console.error("写入失败: " + JSON.stringify(err));
}
}
2. 读取TXT文件
import fs from '@ohos.file.fs';
async function readTxtFile() {
let filePath = "xxx/test.txt"; // 文件路径
try {
let file = await fs.open(filePath, fs.OpenMode.READ_ONLY);
let stat = await fs.stat(filePath); // 获取文件信息
let buffer = new ArrayBuffer(stat.size); // 创建缓冲区
await fs.read(file.fd, buffer); // 读取内容到缓冲区
await fs.close(file.fd);
let text = String.fromCharCode.apply(null, new Uint8Array(buffer)); // 转为字符串
console.log("文件内容: " + text);
} catch (err) {
console.error("读取失败: " + JSON.stringify(err));
}
}
3. 追加内容到TXT文件
import fs from '@ohos.file.fs';
async function appendTxtFile() {
let filePath = "xxx/test.txt";
let content = "\n追加的内容";
try {
let file = await fs.open(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.APPEND);
await fs.write(file.fd, content);
await fs.close(file.fd);
console.log("追加成功");
} catch (err) {
console.error("追加失败: " + JSON.stringify(err));
}
}
4. 删除TXT文件
import fs from '@ohos.file.fs';
async function deleteTxtFile() {
let filePath = "xxx/test.txt";
try {
await fs.unlink(filePath); // 删除文件
console.log("文件删除成功");
} catch (err) {
console.error("删除失败: " + JSON.stringify(err));
}
}
关键说明:
-
权限配置:在
module.json5中声明文件存储权限:"requestPermissions": [ { "name": "ohos.permission.READ_MEDIA", "reason": "$string:reason" }, { "name": "ohos.permission.WRITE_MEDIA", "reason": "$string:reason" } ] -
路径说明:
- 应用沙箱路径:
context.filesDir - 公共目录需申请存储权限
- 应用沙箱路径:
-
异常处理:所有文件操作建议用try-catch包裹,确保稳定性。
这些操作覆盖了TXT文件的基本读写、追加和删除需求。实际使用时注意路径有效性及权限管理。

