相关疑难解决方法(0)

JSON和转义字符

我有一个字符串,它在Javascript中被序列化为JSON,然后反序列化为Java.

看起来如果字符串包含度数符号,那么我就会遇到问题.

我可以帮助找出应该责怪的人:

  • 它是Spidermonkey 1.8的实现吗?(这里面有一个JSON实现)
  • Google gson吗?
  • 我不做正确的事吗?

这是JSDB中发生的事情:

js>s='15\u00f8C'
15°C
js>JSON.stringify(s)
"15°C"
Run Code Online (Sandbox Code Playgroud)

我希望"15\u00f8C'这让我相信Spidermonkey的JSON实现没有做正确的事情...除了JSON主页的语法描述(是规范吗?)说char可以是

any-Unicode-character- except - " - 或 - \ - or- control-character"

所以也许它按原样传递字符串而不将其编码为\ u00f8 ...在这种情况下我会认为问题出在gson库中.

有人可以帮忙吗?

我想我的解决方法是使用不同的JSON库,或者在调用后自己手动转义字符串JSON.stringify()- 但如果这是一个错误,那么我想提交错误报告.

unicode json

52
推荐指数
3
解决办法
12万
查看次数

有没有办法强制Node使用Unicode字符的代理对来编写文件(在JSON中)?

根据这个问题, JSON是使用代理对自动编写的.

但是,这不是我的经验.

使用Node 6.9.2和以下代码,我的文件仍显示未使用代理项对编码的字符.

const fs = require('fs')

const infile = fs.readFile('raw.json', 'utf8', (err, data) => {
    if (err) {
        throw err
    }

    data = JSON.stringify(data)

    fs.writeFile('final.json', data, 'utf8', (err) => {
      if (err) {
        throw err
      }
      console.log('done')
    })

})
Run Code Online (Sandbox Code Playgroud)

在我的编辑器中,它必须具有良好的unicode和使用以及具有这些字符的字形的字体,该文件的内容raw.json具有诸如"?"

该角色仍然出现final.json(没有变化).

此外,我试过编码切换utf8utf16le了正在写入的文件,但没有任何改变.

有没有办法强制使用代理对?

javascript unicode json utf-8

0
推荐指数
1
解决办法
117
查看次数

标签 统计

json ×2

unicode ×2

javascript ×1

utf-8 ×1