标签: utf

D中原始字符类型的限制是什么?

我目前正在探索Digital Mars D语言的规范,并且在理解原始字符类型的完整性方面遇到了一些麻烦." 学习探戈与D "一书对该领域语言的能力和局限性同样含糊不清.

这些类型在网站上给出:

char;    // unsinged 8 bit UTF-8
wchar;   // unsigned 16 bit UTF-16
dchar;   // unsigned 32 bit UTF-32

由于我们知道大多数Unicode转换(UTF)格式编码表示具有可变位宽的字符,这是否意味着D中的char只能包含适合8位的值,或者它是否在机器中扩展物理内存给你双字节字符?也许还有其他一些可能性,比如在重载变量时自动转换到下一个最合适的类型?

比方说,我想在编辑器中使用UTF-8字符并输入中文.它会简单地摔倒,还是能够更正确地处理Unicode字符,就像在C#中一样?是否仍然需要提供胶水代码以允许使用Unicode支持的任何语言?

我非常感谢您提供有关这些类型如何在幕后工作的任何具体信息,以及有关处理其限制的任何一般最佳实践建议.

unicode d utf-8 utf primitive-types

13
推荐指数
1
解决办法
568
查看次数

UTF-8不支持哪些语言?

我正在努力国际化我的一个工作计划.我正在尝试使用远见以避免可能的问题或重做过程.

我看到了UTF-8,UTF-16和UTF-32的参考文献.我的问题是两部分:

  1. UTF-8 支持哪些语言?
  2. UTF-16和UTF-32比UTF-8有什么优势?

如果UTF-8适用于所有内容,那么我很好奇UTF-16和UTF-32的优点是什么(例如数据库中的特殊搜索功能等)理解应该帮助我完成我的程序设计(和数据库连接) )妥善.谢谢!

c++builder utf-8 utf-16 internationalization utf

13
推荐指数
2
解决办法
1万
查看次数

什么是最好的UTF

我对Unicode中的UTF感到困惑.

有UTF-8,UTF-16和UTF-32.

我的问题是:

  1. 什么UTF支持所有Unicode块?

  2. 什么是最好的UTF(性能,大小等),为什么?

  3. 这三个UTF有什么不同?

  4. 什么是字节顺序和字节顺序标记(BOM)?

谢谢

unicode utf-8 utf

11
推荐指数
3
解决办法
1572
查看次数

哪些字符不能直接映射到Cp1252到UTF-8?

我在几个stackoverflow的答案中读到,当从Cp1252(又名Windows-1252;它们是相同的,不是吗?)转换为UTF-8时,某些字符不能直接映射(或者甚至是"不可映射的"),例如:https://stackoverflow.com/a/23399926/2018047

有人可以对此有所了解吗?这是否意味着如果我将源代码从cp1252批量/批量转换为utf-8,我会得到一些最终会成为垃圾的字符?

utf-8 utf cp1252 character-encoding codepages

11
推荐指数
1
解决办法
4万
查看次数

MongoDB特殊字符

我在MongoDB中插入了一个init文件:

db.User.insert({ "_id" : ObjectId("5589929b887dc1fdb501cdba"), "_class" : "com.smartinnotec.aposoft.dao.domain.User", "title" : "DI.", ... "address" : { "_id" : null, ... "country" : "Österreich" }})
Run Code Online (Sandbox Code Playgroud)

如果我用db.User.find()调用此条目,那么我得到以下内容:

{ "_id" : ObjectId("5589929b887dc1fdb501cdba"), "_class" : "com.smartinnotec.aposoft.dao.domain.User", "title" : "DI.", ... "address" : { "_id" : null, ... "country" : "�sterreich" } }
Run Code Online (Sandbox Code Playgroud)

带有特殊字符的单词"�sterreich不正确.

有没有人知道我在mongodb可以做些什么才能解决这个问题?

string-formatting utf special-characters mongodb spring-data

11
推荐指数
2
解决办法
2398
查看次数

序言中不能有内容

我正在尝试使用转换xml为HTML xslt.我java.xml.transform在java中使用这个.它工作正常,直到我碰到一些xml.它说以下错误.

[Fatal Error] :1:1: Content is not allowed in prolog. 
    javax.xml.transform.TransformerConfigurationException: 
    javax.xml.transform.TransformerConfigurationException: 
    javax.xml.transform.TransformerException: 
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
Run Code Online (Sandbox Code Playgroud)

所以我确保在xml声明之前没有字符.我甚至使用解决方案http://forums.sun.com/thread.jspa?messageID=10324562#10324562处理BOM

仍然没有运气,它只发生在一个xml.我甚至在编辑器中打开了xml并将其保存在带utf-8编码的文件中.这真让我抓狂.任何的想法?

更新:当您为xsl文件指定了错误的路径并且发现了文件未找到异常时,您会收到此错误.(这是我的情况.它可能对某人有所帮助.感谢您的回复)

java xml parsing utf

10
推荐指数
1
解决办法
2万
查看次数

是PHP str_word_count()多字节安全吗?

我想str_word_count()在UTF-8字符串上使用.

这在PHP中安全吗?在我看来它应该是(特别是考虑到没有mb_str_word_count()).

但是在php.net上,有很多人通过展示他们自己的"多字节兼容"版本的功能来混淆水.

所以我想我想知道......

  1. 鉴于str_word_count简单地计算由" "(空格)分隔的所有字符序列,它应该在多字节字符串上是安全的,即使它不一定知道字符序列,对吧?

  2. UTF-8中是否有等效的'空格'字符,它们不是ASCII " "(空格)?#

这是我猜的问题所在.

php utf-8 utf

10
推荐指数
1
解决办法
8046
查看次数

在现代C++中正确使用UTF - std类型和字符串容器

简短版本:
如果我想写一个无错误的程序,可以安全且可能有效地执行UTF-8/16/32编码操作,我应该遵守哪些规则?
我特别想知道的东西列在长版下面.

长版:
在我的业余生涯中,我学到了很多C++,但直到今天我还没有尝试完全理解字符编码和语言环境.我可以想象,像内存管理有其规则,使您的程序安全,没有泄漏和不可预测的行为,所以他们有字符编码.Inb4:我已经完成了关于这个主题的研究,一直在浏览cppreference并学习了很多新的类,函数和库,但是如果没有足够的解释,我就无法完全理解它.此外,我找不到任何好的而不是过时<locale>的诀窍.所以,继续前进 - 如果我不得不使用标准库字符串编写多语言应用程序:

  • 我应该选择哪个字符串容器?
    • std::string 用UTF-8?
    • std::wstring (真的不太了解它)
    • std::u16string 用UTF-16?
    • std::u32string 用UTF-32?
  • 我应该完全坚持使用上述容器中的一个或在需要时更换它们吗?
  • 在使用UTF字符串时,我可以在字符串文字中使用非英文字符,例如波兰字符:????????等等?
  • 当我们存储UTF-8编码字符时会发生什么变化std::string?它们是否仅限于一个字节的ASCII字符,还是可以是多字节的?
    当我执行以下操作时会发生什么?

    std::string s = u8"foo";
    s += 'x';
    
    Run Code Online (Sandbox Code Playgroud)
  • wchar_t和其他多字节字符类型有什么区别?是wchar_t字符或wchar_t字符串文字能够存储UTF编码的?

根据标题,我问的是C++语言的最新特性 - 来自C++ 17,C++ 14和C++ 11标准.

编辑:
很少有人指出,上面的一些问题是一个非常大的主题,值得单独提问.TODO:添加问题的链接.

c++ unicode encoding locale utf

10
推荐指数
1
解决办法
1955
查看次数

UTF编码之间的区别?

我有一个简单的问题-是什么样的区别UTF-8,UTF-16UTF-32?我知道,编码字符串有不同的尺寸,但什么是UTF-16UTF-32呢?Should't UTF-8能够正确地处理所有的语言?怎么UTF-7适合这个?

编辑

好吧,我比较了解整个事情的技术方面,但我仍然没有看到我应该使用的原因,UTF-16而不是UTF-8在我的应用程序中.所以我的问题是 - 其他编码的实际用法是什么UTF-8呢?

encoding utf

9
推荐指数
1
解决办法
4144
查看次数

如何在XML字符串中放置一个或任何其他表情符号?

我怎样才能做到这一点?我是Java和Android的新手,我遇到了上述问题.当我将表情符号粘贴到xml文件中时,它会显示一个白色方块和另一个"复制"下一个字符的奇怪字符.

关于如何解决这个问题的任何想法?

android utf

9
推荐指数
2
解决办法
5839
查看次数