gpt4 book ai didi

c++ - 使用 WideCharToMultibyte 时如何删除控制字符

转载 作者:太空宇宙 更新时间:2023-11-04 13:46:47 24 4
gpt4 key购买 nike

我正在开发一个与一些遗留代码交互的 Windows UI 自动化客户端。在调用遗留代码的地方,我必须将 LPWSTR 转换为 char *,这在大多数情况下都有效,但有时输入字符串包含控制字符(例如不可见的 LTR 控制字符),而 WideCharToMultibyte 总是映射这些字符到 '?'。

是否可以删除这些字符?还有其他更适合此目的的功能吗?任何帮助将不胜感激!

最佳答案

似乎没有一个函数可以完成此操作,因此我使用了评论中的 Mark Random 的解决方案。

Let lpDefaultChar point to a character that will never be in your string, such as 0x01, then remove those characters from the output. – Mark Ransom

关于c++ - 使用 WideCharToMultibyte 时如何删除控制字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25513024/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com