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

  • HereWeStayKings

    HereWeStayKi

    3 NİSAN 2013
  • RyanXLT

    RyanXLT

    22 Ocak 2011
  • SignatureSeries

    SignatureSer

    24 Aralık 2006