package com.example.ipcplayer.caseindex;
import com.example.ipcplayer.utils.LogUtil;
import com.example.ipcplayer.utils.StringUtil;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;
public class Content {
String letter;
String content;
private String name;
private Object other = "test";
private String pinyin;
public Object getOther() {
return other;
}
public void setOther(Object other) {
this.other = other;
}
public String getPinyin() {
return getPingYin(name);
}
public void setPinyin(String pinyin) {
this.pinyin = pinyin;
}
public void setName(String name) {
this.name = name;
}
public Content(String letter, String content){
this.letter = letter;
this.name = content;
this.pinyin = getPinyin();
}
public String getLetter() {
return letter;
}
public void setLetter(String letter) {
this.letter = letter;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getName(){
return name;
}
public String getPingYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
format.setVCharType(HanyuPinyinVCharType.WITH_V);
if(StringUtil.isEmpty(inputString)){
LogUtil.d(" inputString is null ");
return null;
}
char[] input = inputString.trim().toCharArray();
String output = "";
try {
for (int i = 0; i < input.length; i++) {
if (java.lang.Character.toString(input[i]).
matches("[\\u4E00-\\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(input[i],format);
output += temp[0];
} else
output += java.lang.Character.toString(
input[i]);
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output;
}
}