草庐IT

utf_unicode_ci

全部标签

c++ - 使用标准 C++ wifstream 读取 UTF-8 文本并转换为 UTF-16

我想从使用UTF-8编码的文件中读取一些文本,然后使用std::wifstream将其转换为UTF-16,如下所示:////ReadUTF-8textandconverttoUTF-16//std::wifstreamsrc;src.imbue(std::locale("???"));//UTF-8???src.open("some_text_file_using_utf8");std::wstringline;//UTF-16stringwhile(std::getline(src,line)){...dosomethingprocessingtheUTF-16string...}是

c++ - 在 Crypto++ 中获取 Unicode 字符串的 SHA1

我自学C++,遇到一个问题,一个多星期都解决不了。我希望你能帮助我。我需要获取Unicode字符串的SHA1摘要(如Привет),但我不知道该怎么做。我试着这样做,但它返回了错误的摘要!对于wstring('Ы')它返回-A469A61DF29A7568A6CC63318EA8741FA1CF2A7我需要-8dbe718ab1e0c4d75f7ab50fc9a53ec4f0528373问候和抱歉我的英语:).加密PP5.6.2MVC++2013#include#include"cryptopp562\cryptlib.h"#include"cryptopp562\sha.h"#inc

c++ - 如何在 utf8 中获取代码点文字

我最近才意识到,C++17的u8字符前缀并不适用于所有utf8代码点,仅适用于ASCII部分。来自cppreferenceUTF-8characterliteral,e.g.u8'a'.SuchliteralhastypecharandthevalueequaltoISO10646codepointvalueofc-char,providedthatthecodepointvalueisrepresentablewithasingleUTF-8codeunit.Ifc-charisnotinBasicLatinorC0ControlsUnicodeblock,theprogramisi

c++ - 将 utf8 (char*) 转换为 wchar_t 的一个文件库?

我正在使用libjson这太棒了。我遇到的唯一问题是我需要将utf8字符串(char*)转换为宽字符字符串(wchar_t*)。我用谷歌搜索并尝试了3个不同的库,但它们都失败了(由于缺少header)。我不需要任何花哨的东西。只是一种单向转换。我该怎么做? 最佳答案 如果您使用的是Windows(考虑到您需要wchar_t,您很可能是Windows),请使用MultiByteToWideChar函数(在windows.h中声明),如下所示:intlength=MultiByteToWideChar(CP_UTF8,0,src,src

如何使Tomcat 8识别Unicode字符,例如:“文本开始”:

如何使Tomcat8识别响应中的Unicode字符?例如。“文本开始”:它应该转换为:(默认情况下,stackoverflow和WeblogicDO)。为什么tomcat不能做同样的事情?还是应该在我们用来进行呼叫的生成的Web服务客户端中配置这一点?轴1.4的萨克斯解析器发现时崩溃在响应中,Axis2至少仅返回null。我们没有多种工具可用于生成我们的Web服务客户端,因为我们使用的是SOAP消息和RPC/编码的WSDL。我将尝试这个想法,即实现HTTP客户端以将数据发送和接收到字符串:轴1.4无法应对响应.我还可以尝试使此工作工作吗?看答案Tomcat并没有特

c++ - 使用C/C++转义unicode字符

我需要将输入字符串中的Unicode字符转义为UTF-16或UTF-32转义序列。例如,输入字符串文字"Eat,drink,愛"应该转为"Eat,drink,\u611b"。以下是排序表中的规则:Escape|Unicodecodepoint'\u'HEXHEXHEXHEX|AUnicodecodepointintherangeU+0toU+FFFFinclusivecorrespondingtotheencodedhexadecimalvalue.'\U'HEXHEXHEXHEXHEXHEXHEXHEX|AUnicodecodepointintherangeU+0toU+10FFFF

c++ - 如何在 Travis CI 中使用最新的 boost 版本?

我尝试通过多种方式在TravisCI环境中安装boost1.64。但他们都没有成功。在我第一次天真的尝试中,我只是在travis脚本中添加了以下行:install:-sudoapt-getinstalllibboost1.64-all-dev结果是错误信息:找不到包libboost1.64-all-dev在第二次尝试中,我指定了具有必要的boost版本的存储库。before_install:-sudoadd-apt-repository-yppa:nschloe/boost-nightly-sudoapt-getupdate-qqinstall:-sudoapt-getinstalll

.NET System::String 到存储在 char* 中的 UTF8 字节

我正在将一些非托管C++代码包装到.NET项目中。为此,我需要将System::String转换为存储在char*中的UTF8字节。我不确定这是否是最好的或什至是正确的方法,如果有人可以看一下并提供反馈,我将不胜感激。谢谢,/大卫//CopyintoblankVisualStudioC++/CLRcommandlinesolution.#include"stdafx.h"#includeusingnamespaceSystem;usingnamespaceSystem::Text;usingnamespaceSystem::Runtime::InteropServices;//Test

c++ - Qt 应用程序 : build with different Qt versions 的 CI

我使用Travis-CI为我的简单Qt应用程序进行持续集成。我的.travis.yml文件看起来像这样(基于thisgist):language:cppbefore_install:-sudoadd-apt-repository--yesppa:ubuntu-sdk-team/ppa-sudoapt-getupdate-qq-sudoapt-getinstall-qqg++qt4-qmakelibqt4-devqt5-qmakeqtbase5-devscript:-qmake-qt=qt4-v-qmake-qt=qt4-make-make-kcheck-makeclean-qmake-

c++ - 将 Unicode 转换为多字节

我有一个小问题,我想将unicode转换为多字节,有什么办法吗 最佳答案 std::stringNarrowString(conststd::wstring&str,constchar*localeName="C"){std::stringresult;result.resize(str.size());std::localeloc(localeName);std::use_facet>(loc).narrow(str.c_str(),str.c_str()+str.size(),'?',&*result.begin());retu