0

我需要帮助,因为我是 DART 初学者。我得到以下格式的 Json:

{"RETORNO":"0","OPERACAO":"PESQUISA_DADOS","UF":"RJ","MUNICIPIO":"","CODIGO_BENEFICIO":"7","BAIRRO":"","PALAVRA_CHAVE":"",
"REG":[
{"NOME":"3247204544554341c7c34f20452043554c5455524120464953494341204c5444412e","NOME_ABREVIADO":"435552564553202d2043454e54524f20505241c741204d415541","TIPO_BENEFICIO":"4553504f52544553","ENDERECO":"4156454e4944412052494f204252414e434f2c203433202f20534f4252454c4f4a41202d20434550203230303930303033202d2052494f204445204a414e4549524f202d20524a","TELEFONES":"2832312920203232303330333836","URL_SITE":"7777772e6375727665732e636f6d2e6272"}
]
}

使用以下指令检索信息解码时,

_nome = dados["NOME"]==null ? " " : ascii.decode(hex.decode(dados["NOME"])).toString();

我收到以下错误:

Error: I/flutter ( 7525): FormatException: Invalid value in input: 199

3247204544554341c7c34f20452043554c5455524120464953494341204c5444412e 2G EDUCAÇãO E CULTURA FISICA LTDA。

十六进制格式字符串具有导致错误的特殊字符 (ÇÃ)。我需要转换为 UTF8 格式吗?我应该怎么做?任何人都可以帮忙吗?

4

1 回答 1

1

ASCII 不支持ç,á等巴西字符。您必须使用 Unicode。

DartString本身就是一个 Unicode UTF-16,所以除非你出于某种原因需要 ASCII,否则只要使用 DartString就可以了。

于 2020-03-27T01:22:35.343 回答