Lucene и выделенные текстовые проблемы со шрифтами - PullRequest
0 голосов
/ 14 декабря 2011

Я использую Lucene HighLighter, с успехом. Вот мой код:

                    StringBuffer sb = new StringBuffer();
        for (int t = 0; t < fields.length; t++) {
            SimpleHTMLFormatter formatter = new SimpleHTMLFormatter(
                    "<span class=\"highlight\">", "</span>");
            Highlighter highlighter = new Highlighter(formatter,
                    new QueryScorer(parser.parse(queryString)));

            if (d.get(fields[t]) != null) {
                hilites = highlighter.getBestFragments(analyzer, fields[t],
                        d.get(fields[t]), 3);
                int l = hilites.length;
                // System.out.println("hilites length: "+l);
                if (l > 0) {

                    for (int x = 0; x < l; x++) {
                        sb.append(hilites[x]).append("...");
                    }

                }
            }

        }

Проблема в моих результатах поиска / выделенном тексте, символы искажены. Это связано с отсутствием шрифтов?

Вот мой основной текст:

**on Educational Materials ~ ATS Job Board ""OR~C'C" .. III DUES United States Full... ? SL[I!," Full Memberhsip - Domestic membership is for residents residing in the United States. Dues...**

Обратите внимание на забавный текст!

Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 14 декабря 2011

«Проблема искаженного текста», вероятно, связана не с Lucene, а с кодировкой XML. Вы установили для contentType значение "text / html; charset = UTF-8"?

...