#鸿蒙通关秘籍#如何在HarmonyOS中使用Axios获取GBK格式的网络数据并转换为UTF-8?

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

在HarmonyOS中,需使用Axios库获取GBK格式的网络数据并转换为UTF-8格式。可以按以下步骤实现:

  1. 首先,通过Axios库发送网络请求获取数据,并将响应的数据类型设置为ARRAY_BUFFER,以便后续处理字节流数据。
axios<string, AxiosResponse<string>, null>({
  method: "get",
  url: "请求URL",
  responseType: 'ARRAY_BUFFER'
}).then(res => {
  // 在这里处理返回的数据
});
  1. 对获取到的字节数组数据进行解码。可以利用util模块中的TextDecoder,将GBK编码的字节数据解码为UTF-8格式。
import util from '@ohos/util';

let textDecoder = util.TextDecoder.create('gbk', { ignoreBOM: true });
let result = new Uint8Array(res.data);
let resultString = textDecoder.decodeWithStream(result, { stream: false });
console.log(resultString);
  1. 将处理后的数据展示在页面上。例如,通过LazyForEachListItem组件将数据循环展示在列表中。
LazyForEach(this.friendsListData, (msg) => {
  ListItem({
    children: [
      // 在这里展示解码后的数据项
    ]
  });
});
分享
微博
QQ
微信
回复
5天前
相关问题
希望fs.write支持utf-8之外编码格式
834浏览 • 1回复 待解决
如何将时间戳转换为日期格式时间
3055浏览 • 1回复 待解决
HarmonyOS 如何将base64数据转换为图片
480浏览 • 1回复 待解决