基于文本方式读取文件
2024-12-04 17:14:52
145次阅读
0个评论
fs.readText(Promise异步返回)
readText(filePath: string, options?: ReadTextOptions): Promise
基于文本方式读取文件(即直接读取文件的文本内容),使用Promise异步返回。
原子化服务API:从API version 11开始,该接口支持在原子化服务中使用。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
filePath | string | 是 | 文件的应用沙箱路径。 |
options | ReadTextOptions | 否 | 支持如下选项: - offset,number类型,表示期望读取文件的位置。可选,默认从当前位置开始读取。 - length,number类型,表示期望读取数据的长度。可选,默认文件长度。 - encoding,string类型,当数据是 string 类型时有效,表示数据的编码方式,默认 ‘utf-8’,仅支持 ‘utf-8’。 |
返回值:
类型 | 说明 |
---|---|
Promise | Promise对象。返回读取文件的内容。 |
错误码:
接口抛出错误码的详细介绍请参见基础文件IO错误码。
示例:
import { BusinessError } from '@kit.BasicServicesKit';
let filePath = pathDir + "/test.txt";
fs.readText(filePath).then((str: string) => {
console.info("readText succeed:" + str);
}).catch((err: BusinessError) => {
console.error("readText failed with error message: " + err.message + ", error code: " + err.code);
});
fs.readText(Callback异步返回)
readText(filePath: string, options?: ReadTextOptions, callback: AsyncCallback): void
基于文本方式读取文件(即直接读取文件的文本内容),使用callback异步回调。
原子化服务API:从API version 11开始,该接口支持在原子化服务中使用。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
filePath | string | 是 | 文件的应用沙箱路径。 |
options | ReadTextOptions | 否 | 支持如下选项: - offset,number类型,表示期望读取文件的位置。可选,默认从当前位置开始读取。 - length,number类型,表示期望读取数据的长度。可选,默认文件长度。 - encoding,string类型,表示数据的编码方式,默认 ‘utf-8’,仅支持 ‘utf-8’。 |
callback | AsyncCallback | 是 | 回调函数,返回读取文件的内容。 |
错误码:
接口抛出错误码的详细介绍请参见基础文件IO错误码。
示例:
import { BusinessError } from '@kit.BasicServicesKit';
import { fileIo as fs, ReadTextOptions } from '@kit.CoreFileKit';
let filePath = pathDir + "/test.txt";
let readTextOption: ReadTextOptions = {
offset: 1,
length: 0,
encoding: 'utf-8'
};
let stat = fs.statSync(filePath);
readTextOption.length = stat.size;
fs.readText(filePath, readTextOption, (err: BusinessError, str: string) => {
if (err) {
console.error("readText failed with error message: " + err.message + ", error code: " + err.code);
} else {
console.info("readText succeed:" + str);
}
});
fs.readTextSync(同步)
readTextSync(filePath: string, options?: ReadTextOptions): string
以同步方法基于文本方式读取文件(即直接读取文件的文本内容)。
原子化服务API:从API version 11开始,该接口支持在原子化服务中使用。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
filePath | string | 是 | 文件的应用沙箱路径。 |
options | ReadTextOptions | 否 | 支持如下选项: - offset,number类型,表示期望读取文件的位置。可选,默认从当前位置开始读取。 - length,number类型,表示期望读取数据的长度。可选,默认文件长度。 - encoding,string类型,当数据是 string 类型时有效,表示数据的编码方式,默认 ‘utf-8’,仅支持 ‘utf-8’。 |
返回值:
类型 | 说明 |
---|---|
string | 返回读取文件的内容。 |
错误码:
接口抛出错误码的详细介绍请参见基础文件IO错误码。
示例:
import { fileIo as fs, ReadTextOptions } from '@kit.CoreFileKit';
let filePath = pathDir + "/test.txt";
let readTextOptions: ReadTextOptions = {
offset: 1,
length: 0,
encoding: 'utf-8'
};
let stat = fs.statSync(filePath);
readTextOptions.length = stat.size;
let str = fs.readTextSync(filePath, readTextOptions);
console.info("readText succeed:" + str);
00