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

  • HDstarcraft

    HDstarcraft

    12 Mayıs 2009
  • Matthew Morrill

    Matthew Morr

    15 EKİM 2011
  • parlophone

    parlophone

    28 ŞUBAT 2006