자바 중국어 병 음 기능 구현

1683 단어 자바한어병 음
요 며칠 동안 프로젝트 를 할 때 병 음 을 통 해 데이터베이스 시트 에 중국어 필드 를 모호 하 게 조회 하 는 데 사 용 했 습 니 다.처음에 신기 하 게 도 많은 자 료 를 찾 았 습 니 다.직접 모호 하 게 조회 하면 실현 할 수 있 지만 복잡 한 것 같 습 니 다.그래서 최종 적 으로 비교적 쉬 운 방안 을 취 했 는데 바로 데이터베이스 테이블 에 병 음 필드 를 새로 추가 하 는 것 이다.이 문 제 를 완벽 하 게 해결 했다.이렇게 할 수 있 지만 데이터 가 이렇게 많아 서 모두 병 음 으로 바 뀌 었 다.그래서 인터넷 에서 찾 고 찾 고 중국 어 를 병 음 으로 바 꾸 는 코드 를 찾 았 습 니 다.여기 서 여러분 과 공유 하 겠 습 니 다.
필요 한 jar:pinyin4j-2.5.0.jar

public static void main(String[] args) {
    System.out.println(getPingYin("    "));
  }
  public static String getPingYin(String str) {
    char[] t1 = null;
    t1 = str.toCharArray();
    String[] t2 = new String[t1.length];
    HanyuPinyinOutputFormat t3 = new HanyuPinyinOutputFormat();
    t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);
    t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
    t3.setVCharType(HanyuPinyinVCharType.WITH_V);
    String t4 = "";
    int t0 = t1.length;
    try {
      for (int i = 0; i < t0; i++) {
        //        ?
        if (Character.toString(t1[i]).matches("[\\u4E00-\\u9FA5]+")) {
          t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);//            t2  ?
          t4 += t2[0];//                     t4?
        } else {
          //         ,             t4?
          t4 += Character.toString(t1[i]);
        }
      }
    } catch (BadHanyuPinyinOutputFormatCombination e) {
      e.printStackTrace();
    }
    return t4;
위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 자바 가 중국 어 를 병 음 기능 으로 전환 하 는 것 을 실현 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다!

좋은 웹페이지 즐겨찾기