当前位置: 首页 > 面试题库 >

如何在Java中编写3个字节的unicode文字?

戚阳
2023-03-14
问题内容

我想用Java编写unicode文字U + 10428。 http://www.marathon-
studhtml" target="_blank">ios.com/unicode/U10428/Deseret_Small_Letter_Long_I

我尝试使用“ \ u10428”,但无法编译。


问题答案:

由于Java在人们认为64K足以满足所有人的需求时就采用了全面的unicode(以前在哪听过?),他们从UCS-2开始,后来又升级为UTF-16。

但是他们从不费心为BMP之外的Unicode字符添加转义序列。

因此,您唯一的办法是 手动将其重新编码为UTF-16代理对 并使用两个UTF-16转义符。

您的示例代码点U+10428"\uD801\uDC28"

我使用此站点进行重新编码:http :
//rishida.net/tools/conversion/

从文档引用:

3.10.5字符串文字

字符串文字包含零个或多个用双引号引起来的字符。字符可以由转义序列(§3.10.6)表示-U + 0000到U + FFFF范围内的字符的一个转义序列,U
+ 010000到U + 010000范围内的字符的UTF-16替代代码单元的两个转义序列U + 10FFFF。



 类似资料:
  • 所以Java中的一个“char”是2个字节。(可以从这里验证。) 我有以下示例代码: 编辑2:如果我打开编码为UTF-16 BE的文件“baz.txt”,我将在文本编辑器中看到欧元字符,我想这是有意义的。

  • 问题内容: 我正在为我的自定义StringDatatype编写单元测试,并且需要写下4字节的unicode字符。“ \ U”-不起作用(非法转义字符错误),例如:U + 1F701(0xf0 0x9f 0x9c 0x81)。如何将其写成字符串? 问题答案: Unicode代码点不是4个字节。它是整数(目前介于U + 0000到U + 10FFFF之间)。 您的4个字节是(很自然地)其UTF-8编码

  • 问题内容: 如何在Java中将字节数组写入文件? 问题答案: 可以使用IOUtils.write(字节[]数据,OutputStream的输出)从Apache的百科全书IO。

  • 好的,我正在运行Java6(应用程序需求),我需要以unicode格式保存一个文件(没有大endian或低endian),只有双字节unicode。我是这么做的:

  • 问题内容: 如果我有方法 如何在不进行强制转换的情况下使用数字参数来调用它? 给出一个错误。 问题答案: 你不能。基本数字常量被认为是整数(如果后面跟有“ L”,则为整数),因此必须将其显式下转换为字节,以将其作为参数传递。据我所知,没有捷径可走。

  • 问题内容: 我正处于从文件中读取某些数据作为字节流的过程中,并且刚刚遇到了一些不确定如何处理的unicode字符串。 每个字符使用两个字节,只有第一个看起来包含实际数据,因此,例如,字符串“ trust”在文件中的存储方式为: 通常,我只使用正则表达式将零替换为零,从而删除空格。但是,文件中单词之间的空格是使用来实现的,因此尝试执行一个简单的String’replaceAll’会使它有点混乱。 我