HarmonyOS 加载本地rowfile文件中的 json 数据, 然后转成对象,怎么实现?

HarmonyOS 加载本地rowfile文件中的 json 数据, 然后转成对象,怎么实现?

HarmonyOS
2024-11-22 11:15:42
934浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
Excelsior_abit

示例如下:

//  a.json 的内容 
{ 
  "a": [ 
    { 
      "name": "module_desc", 
      "value": "module description" 
    }, 
    { 
      "name": "EntryAbility_desc", 
      "value": "description" 
    }, 
    { 
      "name": "EntryAbility_label", 
      "value": "label" 
    } 
  ] } 
//获取rowfile文件并解析成对象 
import { common } from '@kit.AbilityKit'; 
import { BusinessError } from '@kit.BasicServicesKit'; 
import { buffer } from '@kit.ArkTS'; 
//构造对象 
class  TestObj { 
public   a: TestobjOne[]; 
constructor(a: TestobjOne[]) { 
this.a = a; 
} 
} 
class TestobjOne{ 
public   name:string ; 
public   value: string; 
constructor(name:string ,value:string) { 
this.name  = name; 
this.value  = value; 
} 
}
@Entry 
@Component 
struct Index { 
 
  private  context = getContext(this) as common.UIAbilityContext; 
  build() { 
    Column() { 
 
      Button("获取rawFile文件").onClick(()=>{ 
        try { 
          let jsonUti8Arry =   this.context.resourceManager.getRawFileContentSync("a.json"); 
          let JsonStr =  buffer.from(jsonUti8Arry).toString(); 
          let Obj: TestObj  =   JSON.parse(JsonStr) 
          //测试获取TestobjOne对象的name字段 
          console.log(Obj.a[0].name) 
 
        } catch (error) { 
          let code = (error as BusinessError).code; 
          let message = (error as BusinessError).message; 
          console.error(`getRawFileContentSync failed, error code: ${code}, message: ${message}.`); 
        } 
      }) 
    } 
    .width('100%') 
    .height('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.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
分享
微博
QQ
微信
回复
2024-11-22 15:59:29


相关问题
HarmonyOS HasMap 如何转成对象
819浏览 • 1回复 待解决
HarmonyOS 读取本地json文件转成字符串
930浏览 • 1回复 待解决
HarmonyOS json转换成对象
1003浏览 • 2回复 待解决
HarmonyOS 怎么解析本地文件json内容?
931浏览 • 1回复 待解决
HarmonyOS json数据如何转成map
1666浏览 • 1回复 待解决
Color.Black如何转成对颜色编码
2773浏览 • 1回复 待解决
鸿蒙next 如何读取本地json文件
292浏览 • 0回复 待解决
HarmonyOS 如何读取本地json文件
1101浏览 • 1回复 待解决
如何读取本地JSON文件
3145浏览 • 1回复 待解决
HarmonyOS ArkTS如何读取本地json文件
954浏览 • 1回复 待解决
HarmonyOS 本地加载数据太卡顿
1060浏览 • 1回复 待解决