JSoup を使用して、別のサイトから情報を取得しています。情報は別の言語で表示されますが、کورなどのアラビア文字が使用されています。100% 確信はありませんが、それらは ASCII 文字ではないと思います。その文字列が ASCII でないかどうか (そうでないことが正しい場合) を確認し、その文字列を取得するにはどうすればよいですか。
編集: グアバライブラリとコードを使用した後、次の出力が得られます。
ホーム 新しい 215
単語を追加
統計学
私たちに関しては
フィードバック
アラドリー
アングラヒ
ああ
シリア
スレートナハ
ガー
グラマー
問題は、 「کور」などの非 ASCII 文字列が出力されているにもかかわらず、 「Feedback」などの ASCII 文字列が出力されていることです。
これが私が使用しているコードです。
import java.io.IOException;
import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import com.google.common.base.CharMatcher;
public class GrabLinks {
public static void main(String[] args) {
Document doc;
PrintStream out = null;
try {
out = new PrintStream(System.out, true, "UTF-8");
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
// need http protocol
doc = Jsoup.connect("http://thepashto.com/word.php?pashto=&english=house").get();
// get page title
String title = doc.title();
//System.out.println("title : " + title);
// get all links
Elements links = doc.select("a[href]");
for (Element link : links) {
// get the value from href attribute
//System.out.println("\nlink : " + link.attr("href"));
//System.out.println("text : " + link.text());
if (!CharMatcher.ASCII.matchesAllOf(link.text())) {
out.println(link.text());
}
}
} catch (IOException e) { e.printStackTrace(); }
}
}