【问题标题】:C unicode to asciiC unicode 到 ascii
【发布时间】:2011-05-27 06:55:39
【问题描述】:

我想在 C 中将 unicode 中的字符串转换为 ascii。 我的问题是我试图在数据包的 tcp 有效负载中找到数据包的字符串 POST 但我找不到它,因为它可能是 utf-8 编码的。 我知道 ascii 有更多的 unicode 字符,但我认为问题在于.. 我为 C# 找到了一些东西,但你知道是否存在 C 的东西吗?

【问题讨论】:

  • 你想对非 ASCII 字符做什么?
  • 将其保留为 UTF-8 有什么问题?这几乎是网络的事实上的标准。
  • 我不介意那些字符。我只需要字符串“POST”。
  • 这是因为我的程序会查找 http 数据包并检查数据包的类型。但如果数据包被编码,我就不能......
  • 如果数据应该是 HTTP POST 数据包,而您看不到预期的文本,那么我相信您遇到的问题与您尝试解决的问题完全不同。

标签: c http unicode ascii


【解决方案1】:

如果您正在寻找“POST”,这就是 UTF-8 的优势。 UTF-8 中的 ASCII 字符串仅由自身表示。

【讨论】:

  • 嗯,所以你是说找不到 POST?
  • 我成功找到了 GET 请求。我需要对 POST 做同样的事情
  • @user546285:正如@Joshua 所说,UTF8 中的字符串“POST”与 ASCII 中的字符串完全相同。因此,如果您搜索它应该没问题。也许还有其他问题?例如也许字符串被分成两个数据包?
  • 嗯,所以我应该在那里看到像 POST 这样的“正常”字符。好吧,也许还有另一个问题,但我不认为是你说的那个,因为 POST 总是在第一个数据包..
  • 是的,您的代码还有另一个问题。 HTTP 请求始终是 ASCII,也恰好是 UTF-8,因为所有 ASCII 都是有效的 UTF-8。
猜你喜欢
  • 2011-01-03
  • 2018-08-25
  • 2012-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多