OpenHarmony开发者论坛
标题:
OpenHarmony应用如何预置文件并访问预置文件内容
[打印本页]
作者:
onefan
时间:
2023-12-9 16:29
标题:
OpenHarmony应用如何预置文件并访问预置文件内容
[md]# OpenHarmony应用如何预置文件并访问预置文件内容
## 简介:
预置文件可以存放到/resources/rawfile目录,读取预置文件内容可以使用[@ohos.resourceManager](
https://docs.openharmony.cn/page ... esource-manager.md/
)。
## 文档环境:
开发环境:Windows 10 专业版
DevEco Studio 版本:DevEco Studio 3.1 Release(3.1.0.500)
SDK 版本:3.2.13.5 (full sdk)
开发板型号:DAYU200(RK3568)
系统版本:OpenHarmony-3.2-Release
## 演示demo:
新建一个Stage框架的demo工程,在EntryAbility中通过globalThis.demoAbilityContext = this.context拿到到content信息,并在entry\src\main\resources\rawfile目录下预置一个内容为OneFan+++的OpenHarmony.txt文件,通过resourceManager.getRawFileContent接口获取OpenHarmony.txt文件内容,改接口返回的数据为字节码数组:
![1702109419905.png](
https://forums-obs.openharmony.c ... 2sh0q6s0sbz2svy.png
"1702109419905.png")
字节码数组可以使用int8ArrayToString方法转化为String。
![1702109523369.png](
https://forums-obs.openharmony.c ... nqnkie8e049kehh.png
"1702109523369.png")
这样就可以实现文件预置及读取预置文件内容。
![1702110515399.png](
https://forums-obs.openharmony.c ... 1tss6194s0ek0s6.png
"1702110515399.png")
```
import hilog from '@ohos.hilog';
@Entry
@Component
struct Index {
@State textValue: string = 'Welcome OpenHarmony World'
aboutToAppear() {
try {
globalThis.demoAbilityContext.resourceManager.getRawFileContent("OpenHarmony.txt", (error, value) => {
if (error != null) {
hilog.info(0, 'OneFan error is ', error)
} else {
let rawFile = value;
this.textValue = JSON.stringify(rawFile)
hilog.info(0, 'OneFan getRawFd rawFile ', JSON.stringify(rawFile))
this.textValue = this.int8ArrayToString(rawFile)
hilog.info(0, 'OneFan OpenHarmony text is ', JSON.stringify(this.textValue))
}
});
} catch (error) {
let code = (error).code;
hilog.error(0, 'OneFan callback getRawFileContent failed, error code is ', code)
}
}
int8ArrayToString(arrayData) {
let dataToString = "";
for (var i = 0; i < arrayData.length; i++) {
dataToString += String.fromCharCode(arrayData
);
}
return dataToString
}
build() {
Row() {
Column() {
Text(this.textValue)
.fontSize(50)
.fontWeight(FontWeight.Bold)
}
.width('100%')
}
.height('100%')
}
}
```
[/md]
作者:
onefan
时间:
2023-12-9 16:56
【SDK 版本:3.3.13.5 (full sdk)】改为【SDK 版本:3.2.13.5 (full sdk)】
【OpenHarmony.txt 文件,,通过】改为【OpenHarmony.txt 文件,通过】
欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/)
Powered by Discuz! X3.5