【问题标题】:Phoneme from Jsonstream unrecognized in c#C#中无法识别来自Jsonstream的音素
【发布时间】:2021-06-03 04:57:26
【问题描述】:

我的 C# 中的 JsonStream 有点问题

我正在我的存储中读取一个 Json Blob,里面有这个:

{"id":"275177", "fremdwort":"1.FFC-Frankfurt", "ipa":"ʹeːɐ̯stɐ ɛf ɛf ʦeː ʹfraŋkfʊrt"}

在 C# 中:

 while (Jsonreader.Read())
                        { if (Jsonreader.TokenType == JsonToken.StartObject)
                            {
                                var record = serializer.Deserialize<JsonClass>(Jsonreader);
                                log.LogInformation(record.Id.ToString() +" , "+ record.Fremdwort +" , "+ record.Ipa);

如果我记录我的 JsonStreamer,我会收到:

[2021-03-04T13:30:51.367Z] 275177 , 1.FFC-Frankfurt , ´e???st? ?f ?f ?e? ´fra?kf?rt

我缺少一些东西来编码这个问号,如果没有 ???,接收正确字符串的解决方案是什么。

谢谢陌生人!

【问题讨论】:

  • 你在哪里看到???这些仅在尝试使用错误的代码页读取 non-Unicode 字符串或尝试使用错误的代码页在控制台中显示文本时出现。 NET 字符串是 Unicode,所以问题要么是原始博客,要么是你显示输出的方式
  • 顺便说一句,没有如果或但关于这一点。这个问题证明了这一点:StackOverflow 是一个 .NET 应用程序。如果 Unicode 有问题,你自己的问题就会被破坏。
  • @PanagiotisKanavos 嘿嘿,我看到了??在调试控制台中。所以这意味着只有控制台无法显示它,但符号对读者来说是正确的?

标签: c# azure-functions text-to-speech ssml phoneme


【解决方案1】:

我认为这不是一个严重的问题。我在我这边测试了一下,乱码???只有当我们在本地运行Visual Studio中的函数时才会出现。它只显示在日志中。如果我们将它输出到responseMessage(如下图),它不会在输出中显示???

如果我们在 azure portal 上运行该功能,它也不会显示乱码???。无论是在日志中还是在输出中。

所以我们不必担心,本地日志中显示的乱码???可能是日志控制台的编码问题。

【讨论】:

  • 嘿嘿,谢谢您的努力 :),是的,我将行写入表存储,最后一切都很好。只是vs中的控制台有问题。
猜你喜欢
  • 2018-03-20
  • 2017-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-17
  • 2020-12-09
  • 1970-01-01
  • 2022-12-30
相关资源
最近更新 更多