在Java中等效的isprint

时间:2013-04-16 06:58:20

标签: java c

我正在使用Java代码迁移C代码,我需要一些字符处理内置功能,这些功能在字符处理中可用

What I'm looking for,
isprint -> ??? 

Other I got in java.lang.Character
isalnum -> isLetterOrDigit 
isalpha -> isLetter 

有人可以帮我找到等效的isprint吗?

2 个答案:

答案 0 :(得分:5)

Character#isISOControl(char ch)

  

确定指定的字符是否为ISO控制字符。一个   如果字符的代码是,则将其视为ISO控制字符   在'\ u0000'到'\ u001F'范围内或'\ u007F'范围内   通过'\ u009F'。

     

注意:此方法无法处理补充字符。支持   所有Unicode字符,包括增补字符,都使用   Character#isISOControl(int)方法。

答案 1 :(得分:2)

尝试:

Character.isISOControl (char ch)
来自http://www.tutorialspoint.com/java/lang/character_isisocontrol.htm

它返回角色是否为ISO控制角色。如果字符的代码在'\ u0000'到'\ u001F'范围内或在'\ u007F'到'\ u009F'范围内,则该字符被视为ISO控制字符。

实施例

以下示例显示了lang.Character.isISOControl()方法的用法。 package com.tutorialspoint;

import java.lang.*;

public class CharacterDemo {

   public static void main(String[] args) {

      // create 2 char primitives ch1, ch2
      char ch1, ch2;

      // assign values to ch1, ch2
      ch1 = ':';
      ch2 = '\u0013';

      // create 2 boolean primitives b1, b2
      boolean b1, b2;

      // assign isISOControl results of ch1, ch2 to b1, b2
      b1 = Character.isISOControl(ch1);
      b2 = Character.isISOControl(ch2);

      String str1 = ch1 + " is an ISO control character is " + b1;
      String str2 = "ch2 is an ISO control character is " + b2;

      // print b1, b2 values
      System.out.println( str1 );
      System.out.println( str2 );
   }
}

让我们编译并运行上面的程序,这将产生以下结果:

: is an ISO control character is false
ch2 is an ISO control character is true

在此之后,您可以使用false打印字符:)