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

Java中的可打印字符

王高邈
2023-03-14
问题内容

有谁知道如何在Java中检测可打印字符?

一段时间(试用/错误)后,我得到了这种方法:

    public boolean isPrintableChar( char c ) {
        Character.UnicodeBlock block = Character.UnicodeBlock.of( c );
        return (!Character.isISOControl(c)) &&
                c != KeyEvent.CHAR_UNDEFINED &&
                block != null &&
                block != Character.UnicodeBlock.SPECIALS;
    }

我通过KeyListener获取输入,然后按Ctr-“键”打印一个正方形。有了这个功能似乎还足够。

我在这里缺少一些字符吗?


问题答案:

看来这是“字体”的独立方式。

public boolean isPrintableChar( char c ) {
    Character.UnicodeBlock block = Character.UnicodeBlock.of( c );
    return (!Character.isISOControl(c)) &&
            c != KeyEvent.CHAR_UNDEFINED &&
            block != null &&
            block != Character.UnicodeBlock.SPECIALS;
}


 类似资料:
  • 问题内容: 以下内容将替换ASCII控制字符(的缩写): 以下内容将替换所有ASCII不可打印字符(的缩写),包括带重音符号的字符: 但是,两者均不适用于Unicode字符串。有谁能从Unicode字符串中删除不可打印字符的好方法? 问题答案: 详细了解Unicode正则表达式。支持他们。

  • 问题内容: 我需要将一些不可打印的字符添加到java中的字符串中,以便可以沿tcp管道发送它。字符对我正在使用的协议表示某种含义(分别记录分隔符和消息结尾) 最好的方法是什么? 理想情况下,我希望将它们称为常量,以便可以在需要的地方使用字符串conconanation / stringbuilder / string.format将其添加,而不必键入它们。 出于好奇,我需要的字符是ASCIIx1E

  • 问题内容: 我过去跑步 在Perl上摆脱不可打印的字符。 在Python中,没有POSIX正则表达式类,因此我无法编写[:print:]来表示我想要的含义。我不知道在Python中无法检测字符是否可打印。 你会怎么做? 编辑:它也必须支持Unicode字符。string.printable方式会很乐意将它们从输出中剥离。curses.ascii.isprint将为任何unicode字符返回fals

  • 我对Java相当陌生,我想打印字符串中字符的频率(“过滤”)。我将输入过滤到只剩下“az”数组中的字符的位置。在我看来,这应该行得通,但我显然做错了什么,因为我要么收到错误消息(“超出范围”),要么就是打印的值不正确。

  • 我试图编写一个方法,使用递归打印字符串的所有排列。现在,我有这样的代码: 它打印出正确的结果,但我试图在不使用循环的情况下解决它,包括第4行中的循环。可能吗?如果是这样,你会如何解决?非常感谢。 我试图添加第三个名为index的参数,并在第5行的递归调用中写入index 1,但没有成功。我认为添加第三个参数是个好主意,我只是不知道如何使用它。

  • 问题内容: 我正在编写一个程序,该程序将以字符串形式输出唯一字符(通过扫描仪输入)。我创建了一个方法来尝试实现此目的,但我一直在获取不重复的字符,而不是字符串中唯一的一个(或多个)字符。我只想要唯一的字母。 这是我的代码: 这是上面代码的示例输出: 预期的输出将是: 问题答案: 根据所需的输出,当以后重复时,必须替换最初已经添加的字符,因此: