问题标签 [widestring]

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 投票
1 回答
233 浏览

c++ - 升压测试是否支持宽字符串?

我只是在使用 BOOST_TEST_MESSAGE(L"blah") 并且唯一打印出来的是一个十六进制值,例如 0x12345678。我错过了一些配置吗?我正在使用提升 1.44。

0 投票
1 回答
2254 浏览

c# - 如何从 C# 调用这个 Delphi 函数?

我在从 C# 调用 delphi 函数时遇到问题(试图读取或写入受保护的内存),并且想知道调用该方法的正确方法应该是什么。Delphi函数签名如下:

从 C# 调用此方法的正确方法是什么?

0 投票
3 回答
5904 浏览

c++ - C ++如何将宽字符串转换为base64?

将宽字符串转换为 base64 的最佳方法是什么?

0 投票
2 回答
216 浏览

c - 对宽数据使用窄字符串操作函数

我正在解析一个 XML 文件,它可以包含不同语言的本地化字符串(目前它只是英语和西班牙语,但将来它可能是任何语言),XML 解析器的 API 通过返回 XML 中的所有数据char* 是 UTF8 编码的。

解析后需要对数据进行一些操作(在其中搜索子字符串、连接字符串、确定子字符串的长度等)。

使用 strlen、strcat 等标准函数会很方便。由于我从 XML 解析器接收的原始数据是 char*,因此我可以使用这些标准字符串处理函数轻松完成所有操作。

然而,这些当然都假设和要求字符串是 NULL 终止的。因此,我的问题是 - 如果您有表示为 char* 的宽数据,NULL 终止符是否会出现在数据中而不是末尾?

即,如果某种语言中的字符不需要 2 个字节来表示它,并且它用一个字节表示,那么另一个字节是否会/可以为 NULL?

0 投票
1 回答
411 浏览

windows - Pantheios 宽字符?

我正在尝试将日志记录集成到我的 Windows C++ 应用程序中,并且我想使用 Pantheios,因为它通常有非常好的评论。也就是说,包含的所有示例都使用诸如 PANTHEIOS_LITERAL_STRING 等宏来包装字符串文字,并且需要如下类型定义:

typedef std::basic_string<PAN_CHAR_T> string_t;

正确编译。我认为这很丑陋,并且宁愿不使用这些 typedef。

这是一个例子: http: //www.pantheios.org/doc/html/cpp_2misc_2example_8cpp_8misc_8strings_2example_8cpp_8misc_8strings_8cpp-example.html

我尝试在禁用 PANTHEIOS_USE_WIDE_STRINGS 的情况下编译 Pantheios,但出现很多构建错误——有什么想法吗?

0 投票
0 回答
905 浏览

c++ - MSVC 的 STL 如何打开具有宽字符串文件名的 fstream?

可能重复:
使用非 MSVC 编译器在 Windows 下使用具有 Unicode 文件名的文件打开 fstream

我一直在尝试找到一种简单的方法来使用 GCC 在 Windows 中打开文件名中包含非 ASCII 字符的文件。Microsoft 的 STL 为类提供wstring重载fstream,但标准 C++ 没有,因为 `wchar_t´ 没有很好地定义。

我正在寻找一种在标准 C++ 和 Win32 API 中fstream给定文件名时打开 a 的方法。std::wstring

不想创建自己的带有 astd::wstring并模仿的 streambuf 子类fstream。我确实需要模仿fstream::open(const std::wstring &)(或任何它被声明为的)函数,所以我可以毫不费力地打开奇怪命名的文件。

我已经考虑过使用短 DOS 8.3 文件名,但 GetShortPathName 采用并输出宽字符串,无法用于 STL 构造函数/打开函数。我确实有方法可以转换为不同的代码页,所以也许将宽字符串转换为本地代码页会给出正确的 8 位字符串,允许我打开fstream?

0 投票
3 回答
1099 浏览

delphi - 如何在非 unicode Delphi 版本中构造带有变音符号的 WideString?

我正在尝试构建一个(测试)WideString

á ( U+00E1 小写拉丁字母 A 带锐音)

但使用它的分解形式:

拉丁文小写字母 A ( U+0061 ) 结合重音符号 ( U+0301 )

所以我有代码片段:

除了它似乎不起作用:

在此处输入图像描述

可能是 中的错误MessageBox,但我要继续说,错误更有可能出现在我的代码中。

我尝试过的其他一些变化:

奖金喋喋不休

0 投票
5 回答
5239 浏览

delphi - Delphi - 在程序中存储 WideStrings

过去我使用 INI-Files 来存储 unicode 文本,但现在我需要将 unicode 文本存储在可执行文件中。我怎样才能做到这一点?

我想存储这些字母:

0 投票
2 回答
4554 浏览

string - Delphi XE2 AnsiFormat() 和 ANSI 字符串常量

是否有一个仅适用于 Ansi 字符串的便捷 Format() 函数?因为每次我将 AnsiString 与 Format() 一起使用时,都会收到警告。不,我不希望 Delphi 在 Wide 和 Ansi 字符串之间来回转换我的 AnsiStrings。那只会让事情变得非常慢。另外,有没有办法强制字符串常量为 Ansi?看一下这个

然后当我使用 SomeStrFunc('ABC') 时,它将调用宽字符串版本。如果我想使用 Ansi 版本并强制 Delphi 在 AnsiChars 中存储 'ABC' 常量怎么办。

0 投票
1 回答
3300 浏览

printf - 如何使用 sprintf 或 wprintf 正确格式化 WideString

我正在使用此代码格式化 WideString 但没有成功!它打印出意想不到的结果:(

这是我的代码

当我使用s.sprintf(L"%-11S","blablabla");它时它可以工作,但是当我设置为 WideString 的 mysql 字段类型时它不是!我认为问题在于转换!

怎么纠正???