HarmonyOS ets下的json存在哪,有什么api可以读取?

HarmonyOS
7天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

直接将JSON文件放在代码目录中,如在ets目录下新建Json文件夹然后创建data.json文件,然后在代码中使用:

import JsonData from “…/Json/data.json”

使用JSON.stringify(JsonData)方法即可得到Json字符串。

建议将a.json文件存放在resources/rawfile目录下,然后可以通过resouceManager这个api获取内容,代码如下:

import { Context } from '@ohos.abilityAccessCtrl';
import buffer from '@ohos.buffer';
@Entry
@Component
struct Index {
  private context: Context = getContext(this);
  private str: string
  getRawFile(): ESObject {
    //调用getRawFileContent接口获取json文件内容,并读为string
    getContext(this).resourceManager.getRawFileContent("a.json", (err, data) => {
      try {
        this.str = buffer.from(data.buffer).toString();
      } catch (e) {
        console.info(JSON.stringify(e))
      }
    })
    //也可以调用getRawFileContentSync接口获取json文件内容,并读为string
    try {
      let data: Uint8Array = this.context.resourceManager.getRawFileContentSync("a.json");
      this.str = buffer.from(data.buffer).toString();
    } catch (e) {
      console.info(JSON.stringify(e))
    }
    // string转为ESObject
    let obj: ESObject = JSON.parse(this.str)
    return obj
  }
  build() {
    Column() {
      Button("get")
        .onClick(() => {
          this.getRawFile()
        })
    }.width('100%')
  }
}
分享
微博
QQ
微信
回复
7天前
相关问题
js api 如何读取预置json文件?
7404浏览 • 1回复 待解决
stageMode如何读取本地json 文件?
3683浏览 • 1回复 待解决
ETs,对沙箱路径json文件内容遍历
3441浏览 • 1回复 待解决
API9ets开发APP如何退出 ?
3159浏览 • 1回复 待解决
请问ets语言官网在哪里?
3485浏览 • 1回复 待解决
eTS 比 Javascript 什么优势呢?
16906浏览 • 1回复 已解决
HarmonyOS Rawfile中json文件读取
88浏览 • 1回复 待解决
Web组件Cookie信息保存在哪里?
630浏览 • 1回复 待解决
关于在api8ets开发引用xml图片问题
3306浏览 • 1回复 待解决
HarmonyOS 读取.properties文件api
114浏览 • 1回复 待解决
HarmonyOS 数组API文档在哪里?
91浏览 • 1回复 待解决
HarmonyOS API12是否json解析工具
131浏览 • 1回复 待解决
HarmonyOS 如何读取本地json文件
188浏览 • 1回复 待解决
HarmonyOS ets文件和ts文件什么区别
164浏览 • 1回复 待解决