Java 分组分隔符

Java Group Separator

我正在尝试使用组分隔符创建一个文本文件,但我找不到任何有关如何操作的语法。 例如,如果我有两个字符串,我需要通过 Java.

在文本文件中创建类似下面的内容
String a="HREC";
String b="ZZ";

最终输出应带有组分隔符,如下图所示

HRECZZ

有办法吗?

Unicode 代码点

调用那个角色的Character.toString while passing the Unicode code point

明白Unicode is a superset of US-ASCII。 ASCII 中的所有 128 个字符构成了 Unicode 中定义的 144,697 个字符中的前 128 个字符,代码点为 0-127。

对于组分隔符不可打印字符,其代码点的十进制整数为 29。

\u001D

您可以使用其十六进制版本 1D 将数字 29 写为 String 文字中的转义 Unicode 代码点:\u001D.

"dog\u001Dcat"  // A string of seven characters.

Character.toString( 29 )

为了经常使用,定义一个常量。

调用 Character.toString( 29 ) 生成一个 String 包含单个字符,即您的组分隔符。

final String FILE_SEPARATOR = Character.toString( 28 ) ;
final String GROUP_SEPARATOR = Character.toString( 29 ) ;
final String RECORD_SEPARATOR = Character.toString( 30 ) ;
final String UNIT_SEPARATOR = Character.toString( 31 ) ;

或者用静力学做一个class。此处为简洁起见,我们使用 ASCII 中定义的双字符缩写名称。

public class Ascii 
{
    static final String FS = Character.toString( 28 ) ;
    static final String GS= Character.toString( 29 ) ;
    static final String RS= Character.toString( 30 ) ;
    static final String US= Character.toString( 31 ) ;
}

用法:

myStringBuilder.append( Ascii.GS ) ;

对于那些不熟悉这些分隔符的人,请参阅问题,What are the file/group/record/unit separator control characters and their usage?


顺便说一句,在研究这个时我发现 Unicode 还定义了一个字符 SYMBOL FOR GROUP SEPARATOR(代码点 9,245)用于需要显示一些明显的东西的文档,这意味着不可打印的字符。