问题标签 [wstring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9061 浏览

wstring - 如何将 wstring 转换为 LPOLESTR?

以下是我尝试过的,但没有奏效。

请任何人说什么是更好的方法?

0 投票
1 回答
5632 浏览

c++ - 如何在 Linux/OS X 上打印 wstring?

0 投票
3 回答
5926 浏览

c++ - getline 和“奇怪的字符”的问题

我有一个奇怪的问题,我使用

它适用于像这样的 txt 文件 http://www.speedyshare.com/files/29833132/a.txt (对不起链接,但它只有 80 个字节,所以得到它应该不是问题,如果 SO 换行符上的 ic/p 丢失)但是当我将例如水(来自http://en.wikipedia.org/wiki/UTF-16/UCS-2#Examples)添加到加载行的任何行时停止。我有错误的印象,将 wstring 作为一个输入和 wifstream 作为其他输入的 getline 可以咀嚼任何 txt 输入......有没有办法读取文件中的每一行,即使它包含时髦的字符?

0 投票
3 回答
611 浏览

c++ - c++文件加载期间的UTF8加扰

我知道加载 unicode 有点费力,但我看不出如何将提供给其他人的解决方案应用于我的特定问题。

我有一个 Win7/C++/DirectX9 GUI 库,可以将文本呈现到屏幕上。我以前从来没有遇到过问题,因为它只用于西欧语言。现在我必须将它与匈牙利语一起使用,这让我很头疼!我的特殊问题是加载该语言中的特殊字符。

举个例子,FELNŐTTEKNEK,意思是成人。

如果我将此字符串硬编码到我的应用程序中,它会正确呈现:

这会将字符串存储为 std::wstring,并使用 ID3DXFont::DrawTextW() 呈现它。这也证明了我选择的字体 Futura CE 能够呈现特殊字符(CE = 中欧)。

到现在为止还挺好。接下来我只是希望能够从文本文件中加载文本。没什么大不了的。然而结果很糟糕!特殊的 Ő 被另一个字符替换,主要是 Å 甚至两个字符,如 Å(第二个通常无法打印)

我通过输入文本文件确保被编码为 UTF-8 并且天真地试图加载它:

不知何故,我仍在争吵。我加载为 UTF-8 吗?有没有办法确保这一点?我只需要确保我有一个宽字符串,其中包含文本编辑器中显示的文本。

非常感激地收到任何帮助。

0 投票
1 回答
1172 浏览

c++ - 如何让我的 `std::string url_encode_wstring(const std::wstring &input)` 在 Linux 上工作?

所以我们这样的功能:

它适用于 Windows,但我想知道如何(以及是否有可能)让它在 linux 下工作?

0 投票
2 回答
1730 浏览

c++ - 如何将包含 utf-16 编码文本的 std::string 转换为 utf-16 wstring?

所以我们得到一个字符串 Новая папка,它是 utf-16 编码行(Новая папка在 utf-16 中)的 utf-8 表示,我们希望将此字符串转换为 wstring 而不更改编码.. 意思是从字面上将所有数据从字符串带到 wstring 而无需任何转换. 所以我们会得到 wstring 的Новая папка内容。怎么做这样的事情?

更新: 我的意思是 - 我们在字符串中拥有正确 utf-16 字符串的所有数据。我们所需要做的就是将该数据放入 wstring... 这意味着如果 wstring 包含 wchar 可能恰好是0000我们必须将 2 个字符串字符00一起00才能得到它。那就是我不知道该怎么做。

Update2 我是如何来到这里的——我有义务在我的服务器上使用的 C++ 库是 C 风格的解析器。它以 std::string 的形式返回我的用户请求地址。当我让我的客户以这种格式向我发送请求时。

在哪里

当然我调用 url_decode,但我得到一个字符串..( 所以我希望现在我的问题更清楚了。

0 投票
2 回答
6416 浏览

c++ - 如何在 Linux API 中使用 wstring(s)?

我想在 Linux 中开发一个应用程序。我想使用 wstring 因为我的应用程序应该支持 unicode 而我不想使用 UTF-8 字符串。

在 Windows 操作系统中,使用 wstring 很容易。因为任何 ANSI API 都有 unicode 形式。例如有两个 CreateProcess API,第一个 API 是 CreateProcessA,第二个 API 是 CreateProcessW。

但是在 Linux 中使用 wstring 似乎很复杂!例如,Linux 中有一个名为parport_open的 API (它只是一个示例)。

而且我不知道如何将我的 wstring 发送到这个 API(或像 parport_open 这样接受字符串参数的 API)。

我的问题是如何在 Linux API 中使用 wstring(s)?

注意:我不想使用 UTF-8 字符串。

谢谢

0 投票
4 回答
15972 浏览

c++ - 在 Linux 中是否有任何将 wstring 或 wchar_t* 转换为 UTF-8 的内置函数?

我想将 wstring 转换为 UTF-8 编码,但我想使用 Linux 的内置函数。

是否有任何内置函数可以通过简单的调用wstring在 Linux 中转换或转换wchar_t*为 UTF-8 ?

例子:

0 投票
2 回答
2079 浏览

c++ - 将字符串转换为wstring,编码问题

我已经阅读了 Stroustrup 的附录 D(特别注意语言环境和 Codecvt)。Stroustrup 没有给出一个好的编解码器和加宽示例(恕我直言)。我一直在尝试从互联网上调转东西,没有任何乐趣。我也尝试过灌输字符串流但没有成功。

任何人都能够显示(并解释)从 UTF-8 到 UTF-16(或 UTF-32)编码的代码吗?注意:我事先不知道输入/输出字符串的大小,所以我希望解决方案应该使用reserve和一个back_inserter. 请不要使用out.resize(in.length()*2).

完成后,如果代码确实有效,那就太好了(令人惊讶的是那里有多少损坏的代码)。请确保以下“往返”。下面的字节是 UTF-8 和 UTF-{16|32} 中“bone”的汉字。

我为一个基本问题道歉。在 Windows 上,我使用 Win32 API,并且在编码之间移动时没有这些问题。

0 投票
2 回答
630 浏览

c++ - boost::variant 是否与 std::string 一起使用?

我使用 boost::variant 用 C++ 编写了一个简单的程序。程序代码如下所示。

但是当我尝试用命令编译它时

我明白了

其次是一堆候选函数。

我错过了什么?有趣的是,当我使用std::string而不是std::wstring一切都很好时。

提前致谢。