我正在使用其他客户端组件,并注意到它们似乎没有正确显示特殊字符。例如,星标 ☆
显示为问号 ?
,我希望可能有一个简单的解决方案来解决这个问题问题,并将感激任何建议。
根据要求,我在原帖中添加了更多信息,试图让事情更加清晰。
这就是我在做什么。
1。)我在表单上放置了TRestClient
,TRestRequest
和TRestResponse
组件,并在设计时在对象检查器中将它们链接在一起。
2。)然后我在设计时将我要查询的网址添加到TRestClient的BaseURL
属性。
3.)最后,我右键单击表单上的TRestRequest组件,然后单击Execute...
操作。
执行上述操作将查询我在TRestClients BaseURL属性中输入的BaseURL,并将对查询的响应移交给处理请求的TRestRequest组件,然后将请求结果提供给已读取的TRestResponse组件只有名为" Content"它保存来自服务器的响应,并且可以在设计时通过在对象检查器中按住鼠标来查看它。
我的网络浏览器(FireFox)中出现的原始JSON结构(编码为1252 ANSI - Latin I)看起来像这样:
{
"id" : 17,
"title" : "Shooting Star ☆",
"episodes" : 13
]
当我将Firefox中的页面编码更改为" Unicode"然后结构看起来像这样
{
"id" : 17,
"title" : "Shooting Star ☆",
"episodes" : 13
]
当我在对象检查器中查看响应时,"射击之星中的☆
字符☆"条目转换为问号?
字符,我希望它是" 显示"当页面模式设置为Unicode时,它出现在我的浏览器中。
我已经设法使用UTF8ToUnicodeString函数对原始字符串执行此操作,但这仅在原始字符串未触及时才可能,但RestClient不保留这些字符,而是将它们转换为问号?
符号。
我想在这种情况下我应该问的问题是如何告诉"违规组件"不首先转换这些字符?