SORU
27 AĞUSTOS 2010, Cuma


Java, eğer bir Dize yalnızca ASCII olup olmadığını kontrol etmek mümkün mü?

Karakter.isLetter(c) eğer karakter bir harf ise true değerini gönderir. Ama bir şekilde eğer bir Dize yalnızca ASCII temel karakterler içeriyorsa, hızlı bir şekilde bulmak için.

CEVAP
27 AĞUSTOS 2010, Cuma


java.nio.charset.Charset ile yapabilirsiniz.

import java.nio.charset.Charset;
import java.nio.charset.CharsetEncoder;

public class StringUtils {

  static CharsetEncoder asciiEncoder = 
      Charset.forName("US-ASCII").newEncoder(); // or "ISO-8859-1" for ISO Latin 1

  public static boolean isPureAscii(String v) {
    return asciiEncoder.canEncode(v);
  }

  public static void main (String args[])
    throws Exception {

     String test = "Réal";
     System.out.println(test   " isPureAscii() : "   StringUtils.isPureAscii(test));
     test = "Real";
     System.out.println(test   " isPureAscii() : "   StringUtils.isPureAscii(test));

     /*
      * output :
      *   Réal isPureAscii() : false
      *   Real isPureAscii() : true
      */
  }
}

Detect non-ASCII character in a String

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • Dive In

    Dive In

    17 Temmuz 2013
  • The Exploiteers

    The Exploite

    4 Ocak 2011