西洋文字とアラビア文字が混在するテキストを連結するのに問題があります。
次のようなトークンのリストがあります。
-LRB-
دریای
مازندران
-RRB-
,
次の手順を使用して、これらのトークンのリストを連結します。
String str = "";
for (String tok : tokens) {
str += tok + " ";
}
これは私の手順の出力です:
-LRB- دریای مازندران -RRB- ,
ご覧のとおり、アラビア語の単語の位置が逆になっています。どうすればこれを解決できますか (テキストの方向に関する情報を無視するように Java に提案するかもしれません)。
編集
実際、私の問題は偽の問題だったようです。今、私は新しいものを持っています。(word *)
出力が次のようになるように、各単語を次のような文字列でラップする必要があります。
(word1 *)(word2 *)(word3 *)...
私が使用する手順は次のとおりです。
String str = "";
for (String tok : tokens) {
str += "(" + tok + "*)";
}
しかし、私が得た結果は次のとおりです。
(-LRB- *)(دریای *)(مازندران *)(-RRB- *)(, *)
それ以外の:
(-LRB- *)(دریای)(* مازندران *)(-RRB- *)(, *)
** EDIT2 ** 実際、私の問題は問題ではないことがわかりました。ファイルに文字列を書き、それを nano で (コンソールで) 開きました。そして、それは正しく連結されました。
したがって、問題は、Eclipse コンソール (および gedit) が原因であり、文字列が正しくレンダリングされませんでした。
とにかく、助けてくれてありがとう!