EBCDIC编码的Java Java比较器

我遇到了一个需要将字符串转换为EBCDIC编码然后对其进行排序的要求。我们需要使用EBCDIC对其进行排序,因为字符串必须放在大型机中。我将排序的字符串只有大写字母和整数。

我用谷歌搜索了一下,然后发现了来自IBM的链接,该

链接按顺序列出了字符

我意识到,EBCDIC排序与常规java字典排序完全相反(至少对于我要处理的数据类型而言)。

我的问题是我的认识对吗?如果不是我想念的东西?或者是否有任何可用于EBCDIC编码的Java比较器。

回答:

由于char类型在Java EBCDIC字符串中隐式为UTF-16,因此需要将其作为Java字节数组进行比较。

例:

    Charset encoding = Charset.forName("IBM1047");

Comparator<String> encComparator = (s1, s2) ->

encoding.encode(s1)

.compareTo(encoding.encode(s2));

以上是 EBCDIC编码的Java Java比较器 的全部内容, 来源链接: utcz.com/qa/411017.html

回到顶部