HarmonyOS 如何将工程里的json文件读取出来并转换为jsonBean

想在HarmonyOS工程里放一个json文件,请问怎样将其读取出来并转换为jsonBean?

HarmonyOS
2024-12-27 15:20:27
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
Heiang

想将本地json文件转成object对象,参考代码如下:

Index.ets

import { Context } from '@ohos.abilityAccessCtrl';
import buffer from '@ohos.buffer';
import { JsonBean } from  '../model/JsonBean';
@Entry
@Component
struct Index {
  private context:Context = getContext(this) ;
  private str:string = ''
  getRawFile(): ESObject{
    //调用getRawFileContent接口获取json文件内容,并读为string
    getContext(this).resourceManager.getRawFileContent("data.json",(err,data)=>{
      try {
        this.str = buffer.from(data.buffer).toString();
        console.info(JSON.stringify(this.str))
      }catch (e){
        console.info(JSON.stringify(e))
      }
    })
    //也可以调用getRawFileContentSync接口获取json文件内容,并读为string
    try {
      let data: Uint8Array= this.context.resourceManager.getRawFileContentSync("data.json");
      this.str = buffer.from(data.buffer).toString();
    } catch (e) {
      console.info(JSON.stringify(e))
    }
    // string转为JsonBean
    let obj:JsonBean = JSON.parse(this.str)
    console.info(obj.name);
    console.info(obj.age);
    console.info(obj.area);
    return obj
  }
  build() {
    Column() {
      Button("get")
        .onClick(() => {
          this.getRawFile()
        })
    }.width('100%')
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.

data.json文件是存放路径entry-src-main-resources-rawfile-data.json。

data.json 文件:

{
  "name": "john",
  "area": "nanjing",
  "age": "22"
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

JsonBean文件存放路径entry-src-main-ets-model-JsonBean.ets。

JsonBean.ets:

export interface  JsonBean{
  name: string;
  area: string;
  age: string;
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
分享
微博
QQ
微信
回复
2024-12-27 16:58:44


相关问题
HarmonyOS 如何将HashMap转换为Json string?
1495浏览 • 1回复 待解决
HarmonyOS 如何将视频转换为GIF
807浏览 • 1回复 待解决
如何将时间戳转换为日期格式时间
4348浏览 • 1回复 待解决
HarmonyOS 如何将base64数据转换为图片
1450浏览 • 1回复 待解决
如何将app.media.app_icon,转换为PixelMap
3052浏览 • 1回复 待解决
如何将字符串转换为浮点数。
1441浏览 • 1回复 待解决
HarmonyOS 如何将图片压缩并转成base64
1284浏览 • 1回复 待解决
请问如何将openblock文件转换成exe文件
3148浏览 • 0回复 待解决
如何将文件转换成字符串
1137浏览 • 1回复 待解决