JAvaはopenccを呼び出し、簡体字中国語を繁体字に変換
Open Chinese Convert(OpenCC)はオープンソースの中国語簡繁変換プロジェクトであり、統計予測に基づく高品質の簡繁変換辞書の作成に力を入れている.関数ライブラリ(libopencc)、コマンドライン簡繁変換ツール、人工校正ツール、辞書生成プログラム、オンライン変換サービス、グラフィックユーザーインタフェースも提供されている.
Openccの特徴:「一簡対多繁」、「一簡対多異」と「地域用語の違い」を厳格に区別する. は異体字変換をサポートし、陸港澳台などの異なる地域の字の違いを互換性がある. 簡略対多繁語条を厳格に審査し、原則は「分則が合わない」であり、ユーザーはカスタマイズして合併することができる. は中国大陸、台湾、香港の異体字と地域習慣用語の転換を支持し、例えば「裏」「里」「マウス」「マウス」「マウス」などである. ワードライブラリと関数ライブラリは完全に分離されており、変更、インポート、拡張が自由です. はC、C++、Python、PHP、Java、Ruby、Nodeをサポートする.js and Androidなど多くの言語のAPIは、コマンドラインの直接呼び出しやグラフィックインタフェースを提供しています. はWindows、Linux、Macなど多くのプラットフォームに対応しています.
プロジェクトはjavaで作成され、公式サイトではjava言語がサポートされているが、javaのapiが見つからないため、linuxの下にopenccをインストールし、shellスクリプトを作成し、javaを使用してshellスクリプトを呼び出して簡単な変換を行う.
Openccインストールubuntuをクリックしてopenccをインストールしてください.簡体字転繁体字
Openccインストール後shellスクリプトの作成
テスト:
JAva呼び出しshell
しかし、具体的な実行中にjavaプログラムがしばらく実行されると詰まり、shellスクリプトが入力するパラメータが特に大きい場合、javaはshellスクリプトの実行が完了するのを待っていることがわかりました.そのため、長いテキストにはセグメント変換が採用されています.
本文の転載http://www.weare.net.cn/article/62eae88fa673b07361ba57cf79a0ed96.html
Openccの特徴:
プロジェクトはjavaで作成され、公式サイトではjava言語がサポートされているが、javaのapiが見つからないため、linuxの下にopenccをインストールし、shellスクリプトを作成し、javaを使用してshellスクリプトを呼び出して簡単な変換を行う.
Openccインストールubuntuをクリックしてopenccをインストールしてください.簡体字転繁体字
Openccインストール後shellスクリプトの作成
#!/bin/sh
#echo $1
echo $1 |opencc -c s2tw
テスト:
ubuntu@ubuntu-vm:/usr/local$ ./s2tw.sh
JAva呼び出しshell
public static Object sc2tw(String content){
try {
StringBuffer sb = new StringBuffer("");
Process ps = Runtime.getRuntime().exec("/usr/local/s2tw.sh \""+content+"\"");
BufferedReader in = new BufferedReader(new InputStreamReader(ps.getInputStream()));
String line = null;
ps.waitFor();
while((line = in.readLine())!=null){
sb.append(line);
}
in.close();
if(sb.indexOf("\"")==0){
sb = sb.deleteCharAt(0);
}
if(sb.lastIndexOf("\"")==sb.length()-1){
sb = sb.deleteCharAt(sb.length()-1);
}
ps.destroy();
line = null;
return sb;
} catch (IOException e) {
logger.error("shell ");
} catch (InterruptedException e) {
logger.error("shell ");
}
return content;
}
しかし、具体的な実行中にjavaプログラムがしばらく実行されると詰まり、shellスクリプトが入力するパラメータが特に大きい場合、javaはshellスクリプトの実行が完了するのを待っていることがわかりました.そのため、長いテキストにはセグメント変換が採用されています.
public static String simple2tw(String content){
StringBuffer cs = new StringBuffer("");
int length = content.length();
int count = length/words;
int ys = length%words;
if (count==0) {
cs.append(sc2tw(content));
}else{
for(int i=0;i0){
cs.append(sc2tw(content.substring(length)));
}
}
return cs.toString();
}
本文の転載http://www.weare.net.cn/article/62eae88fa673b07361ba57cf79a0ed96.html