亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? compiledfiledictionaries.java

?? 對Lcuene的良好的封裝,提供了中文分詞字典 功能強大
?? JAVA
字號:
/**
 * Copyright 2007 The Apache Software Foundation
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package net.paoding.analysis.analyzer.impl;

import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import net.paoding.analysis.dictionary.BinaryDictionary;
import net.paoding.analysis.dictionary.Dictionary;
import net.paoding.analysis.dictionary.HashBinaryDictionary;
import net.paoding.analysis.dictionary.Word;
import net.paoding.analysis.dictionary.support.detection.Detector;
import net.paoding.analysis.dictionary.support.detection.DifferenceListener;
import net.paoding.analysis.dictionary.support.filewords.FileWordsReader;
import net.paoding.analysis.exception.PaodingAnalysisException;
import net.paoding.analysis.knife.CJKKnife;
import net.paoding.analysis.knife.Dictionaries;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

/**
 * 中文字典緩存根據地,為{@link CJKKnife}所用。<br>
 * 從本對象可以獲取中文需要的相關字典。包括詞匯表、姓氏表、計量單位表、忽略的詞或單字等。
 * <p>
 * 
 * @author Zhiliang Wang [qieqie.wang@gmail.com]
 * 
 * @see CJKKnife
 * 
 * @since 1.0
 */
public class CompiledFileDictionaries implements Dictionaries {

	// -------------------------------------------------

	protected Log log = LogFactory.getLog(this.getClass());

	// -------------------------------------------------

	/**
	 * 詞匯表字典
	 */
	protected Dictionary vocabularyDictionary;

	/**
	 * lantin+cjk的詞典
	 */
	protected Dictionary combinatoricsDictionary;

	/**
	 * 姓氏字典
	 * 
	 */
	protected Dictionary confucianFamilyNamesDictionary;

	/**
	 * 忽略的單字
	 */
	protected Dictionary noiseCharactorsDictionary;

	/**
	 * 忽略的詞語
	 * 
	 */
	protected Dictionary noiseWordsDictionary;

	/**
	 * 計量單位
	 */
	protected Dictionary unitsDictionary;

	// -------------------------------------------------

	protected String dicHome;
	protected String noiseCharactor;
	protected String noiseWord;
	protected String unit;
	protected String confucianFamilyName;
	protected String combinatorics;
	protected String charsetName;

	// ----------------------

	public CompiledFileDictionaries() {
	}

	public CompiledFileDictionaries(String dicHome, String noiseCharactor,
			String noiseWord, String unit, String confucianFamilyName,
			String combinatorics, String charsetName) {
		this.dicHome = dicHome;
		this.noiseCharactor = noiseCharactor;
		this.noiseWord = noiseWord;
		this.unit = unit;
		this.confucianFamilyName = confucianFamilyName;
		this.combinatorics = combinatorics;
		this.charsetName = charsetName;
	}

	public String getDicHome() {
		return dicHome;
	}

	public void setDicHome(String dicHome) {
		this.dicHome = dicHome;
	}

	public String getNoiseCharactor() {
		return noiseCharactor;
	}

	public void setNoiseCharactor(String noiseCharactor) {
		this.noiseCharactor = noiseCharactor;
	}

	public String getNoiseWord() {
		return noiseWord;
	}

	public void setNoiseWord(String noiseWord) {
		this.noiseWord = noiseWord;
	}

	public String getUnit() {
		return unit;
	}

	public void setUnit(String unit) {
		this.unit = unit;
	}

	public String getConfucianFamilyName() {
		return confucianFamilyName;
	}

	public void setConfucianFamilyName(String confucianFamilyName) {
		this.confucianFamilyName = confucianFamilyName;
	}

	public String getCharsetName() {
		return charsetName;
	}

	public void setCharsetName(String charsetName) {
		this.charsetName = charsetName;
	}

	public void setLantinFllowedByCjk(String lantinFllowedByCjk) {
		this.combinatorics = lantinFllowedByCjk;
	}

	public String getLantinFllowedByCjk() {
		return combinatorics;
	}

	// -------------------------------------------------

	/**
	 * 詞匯表字典
	 * 
	 * @return
	 */
	public synchronized Dictionary getVocabularyDictionary() {
		if (vocabularyDictionary == null) {
			// 大概有5639個字有詞語,故取0x2fff=x^13>8000>8000*0.75=6000>5639
			vocabularyDictionary = new HashBinaryDictionary(
					getVocabularyWords(), 0x2fff, 0.75f);
		}
		return vocabularyDictionary;
	}

	/**
	 * 姓氏字典
	 * 
	 * @return
	 */
	public synchronized Dictionary getConfucianFamilyNamesDictionary() {
		if (confucianFamilyNamesDictionary == null) {
			confucianFamilyNamesDictionary = new BinaryDictionary(
					getConfucianFamilyNames());
		}
		return confucianFamilyNamesDictionary;
	}

	/**
	 * 忽略的詞語
	 * 
	 * @return
	 */
	public synchronized Dictionary getNoiseCharactorsDictionary() {
		if (noiseCharactorsDictionary == null) {
			noiseCharactorsDictionary = new HashBinaryDictionary(
					getNoiseCharactors(), 256, 0.75f);
		}
		return noiseCharactorsDictionary;
	}

	/**
	 * 忽略的單字
	 * 
	 * @return
	 */
	public synchronized Dictionary getNoiseWordsDictionary() {
		if (noiseWordsDictionary == null) {
			noiseWordsDictionary = new BinaryDictionary(getNoiseWords());
		}
		return noiseWordsDictionary;
	}

	/**
	 * 計量單位
	 * 
	 * @return
	 */
	public synchronized Dictionary getUnitsDictionary() {
		if (unitsDictionary == null) {
			unitsDictionary = new HashBinaryDictionary(getUnits(), 1024, 0.75f);
		}
		return unitsDictionary;
	}

	public synchronized Dictionary getCombinatoricsDictionary() {
		if (combinatoricsDictionary == null) {
			combinatoricsDictionary = new BinaryDictionary(
					getCombinatoricsWords());
		}
		return combinatoricsDictionary;
	}

	private Detector detector;

	public synchronized void startDetecting(int interval, DifferenceListener l) {
		if (detector != null || interval < 0) {
			return;
		}
		Detector detector = new Detector();
		detector.setHome(dicHome);
		detector.setFilter(null);
		detector.setFilter(new FileFilter() {
			public boolean accept(File pathname) {
				return pathname.getPath().endsWith(".dic.compiled")
						|| pathname.getPath().endsWith(".metadata");
			}
		});
		detector.setLastSnapshot(detector.flash());
		detector.setListener(l);
		detector.setInterval(interval);
		detector.start(true);
		this.detector = detector;
	}

	public synchronized void stopDetecting() {
		if (detector == null) {
			return;
		}
		detector.setStop();
		detector = null;
	}

	// ---------------------------------------------------------------
	// 以下為輔助性的方式-類私有或package私有

	protected Word[] getDictionaryWords(String dicNameRelativeDicHome) {
		File f = new File(this.dicHome, "/" + dicNameRelativeDicHome
				+ ".dic.compiled");
		if (!f.exists()) {
			return new Word[0];
		}
		try {
			Map map = FileWordsReader.readWords(f.getAbsolutePath(),
					charsetName, LinkedList.class, ".dic.compiled");
			List wordsList = (List) map.values().iterator().next();
			return (Word[]) wordsList.toArray(new Word[wordsList.size()]);
		} catch (IOException e) {
			throw toRuntimeException(e);
		}
	}
	
	
	protected Word[] getVocabularyWords() {
		return getDictionaryWords("vocabulary");
	}

	protected Word[] getConfucianFamilyNames() {
		return getDictionaryWords(confucianFamilyName);
	}

	protected Word[] getNoiseWords() {
		return getDictionaryWords(noiseWord);
	}

	protected Word[] getNoiseCharactors() {
		return getDictionaryWords(noiseCharactor);
	}

	protected Word[] getUnits() {
		return getDictionaryWords(unit);
	}

	protected Word[] getCombinatoricsWords() {
		return getDictionaryWords(combinatorics);
	}

	// --------------------------------------

	protected RuntimeException toRuntimeException(IOException e) {
		return new PaodingAnalysisException(e);
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费成人在线网站| 国产精品一区免费在线观看| 久久国产精品区| jlzzjlzz亚洲日本少妇| 在线电影院国产精品| 亚洲天堂免费看| 国产成人99久久亚洲综合精品| 欧美蜜桃一区二区三区| 国产精品伦一区二区三级视频| 首页综合国产亚洲丝袜| 91在线视频播放地址| 精品伦理精品一区| 香蕉成人伊视频在线观看| 成人av午夜电影| 精品少妇一区二区三区免费观看| 亚洲伊人色欲综合网| 成人app下载| 国产蜜臀av在线一区二区三区| 亚洲成av人影院| 色妹子一区二区| 国产精品久久久久久久久免费丝袜| 蜜臀va亚洲va欧美va天堂| 欧美亚一区二区| 亚洲精品国产无天堂网2021| 成人精品gif动图一区| 久久久91精品国产一区二区三区| 天天影视色香欲综合网老头| 欧美色图12p| 亚洲一线二线三线视频| 91免费看视频| 亚洲美女淫视频| 色香蕉久久蜜桃| 夜夜嗨av一区二区三区网页| 色哟哟一区二区三区| 一区二区在线观看免费视频播放| 99精品黄色片免费大全| 亚洲欧洲av色图| 色婷婷综合久久久中文一区二区| 中文字幕亚洲视频| 一本久道久久综合中文字幕| 亚洲免费色视频| 在线观看91视频| 日日夜夜免费精品| 日韩一区二区在线观看| 九色综合狠狠综合久久| 精品成人私密视频| 国产成人午夜99999| 国产视频911| av成人免费在线| 亚洲成a天堂v人片| 日韩一区二区中文字幕| 国内成人自拍视频| 欧美国产禁国产网站cc| 91免费版在线| 日韩精品一二区| 久久久.com| 色哦色哦哦色天天综合| 日韩激情视频在线观看| 精品国产欧美一区二区| 成人sese在线| 首页欧美精品中文字幕| 久久久美女艺术照精彩视频福利播放| 成人精品一区二区三区四区| 亚洲一区二区视频在线观看| 精品捆绑美女sm三区| 成人18精品视频| 日韩中文字幕av电影| 久久精品综合网| 91国偷自产一区二区三区观看| 蜜桃av噜噜一区二区三区小说| 中文字幕高清不卡| 欧美另类一区二区三区| 福利电影一区二区三区| 亚洲大片免费看| 国产精品视频看| 日韩午夜在线播放| 91影院在线免费观看| 另类综合日韩欧美亚洲| 亚洲欧美区自拍先锋| 久久亚洲一级片| 欧美男人的天堂一二区| 成人在线综合网| 日韩国产精品久久久久久亚洲| 欧美激情中文字幕| 欧美丰满美乳xxx高潮www| 不卡一区在线观看| 激情六月婷婷久久| 午夜精品一区二区三区三上悠亚| 欧美国产日韩精品免费观看| 欧美一级国产精品| 欧美视频自拍偷拍| 成人sese在线| 国产乱对白刺激视频不卡| 香蕉加勒比综合久久| 亚洲美女区一区| 中文字幕日韩av资源站| 久久久亚洲高清| 日韩欧美国产一区在线观看| 在线免费不卡电影| 91视频91自| 91香蕉视频污| 成人黄页在线观看| 成人精品gif动图一区| 国产乱理伦片在线观看夜一区| 日本最新不卡在线| 亚洲成人精品在线观看| 亚洲国产成人高清精品| 亚洲欧美色图小说| 亚洲欧美另类小说| 国产精品国产精品国产专区不片 | 9i在线看片成人免费| 韩国视频一区二区| 久久国产人妖系列| 精品一区二区在线视频| 日本欧美在线看| 日本中文字幕一区二区有限公司| 亚洲成人高清在线| 三级一区在线视频先锋 | 91蝌蚪porny九色| www.视频一区| 不卡一区在线观看| 色综合一区二区| 91成人在线免费观看| 欧美日韩精品久久久| 欧美日韩国产a| 7777精品伊人久久久大香线蕉完整版| 欧美人与性动xxxx| 日韩一区二区三区视频在线观看| 欧美日韩国产系列| 日韩欧美一区在线| 久久久久久久久久电影| 国产精品天干天干在观线| 中文字幕在线不卡国产视频| 一区在线中文字幕| 亚洲一区在线观看免费| 青青青伊人色综合久久| 久久av中文字幕片| 成人成人成人在线视频| 91成人在线观看喷潮| 日韩欧美一级二级三级久久久| 精品国产乱码久久久久久久久| 国产日韩欧美亚洲| 亚洲欧美电影一区二区| 日韩**一区毛片| 国产乱码字幕精品高清av| 99久久精品免费精品国产| 精品污污网站免费看| 精品久久久久久久久久久久久久久 | 亚洲在线观看免费视频| 香蕉加勒比综合久久| 狠狠色丁香婷综合久久| 色综合天天综合网天天看片| 欧美乱妇23p| 欧美国产综合一区二区| 午夜精品视频在线观看| 国产成人综合在线观看| 色老汉一区二区三区| 久久综合狠狠综合久久综合88 | 国产精品久久久久久户外露出 | 欧美在线短视频| 亚洲精品一线二线三线| 中文字幕一区二区三区四区不卡| 欧美aaa在线| 91免费观看视频| 久久精品日韩一区二区三区| 亚洲成人午夜影院| 国产成人av一区二区三区在线观看| 欧美综合久久久| 久久精品视频免费| 图片区小说区区亚洲影院| 99国产欧美另类久久久精品| 精品国产乱码久久久久久久久| 一区二区三区欧美视频| 成人免费视频视频在线观看免费| 欧美一区二区三区在| 亚洲精品免费电影| 成人性色生活片免费看爆迷你毛片| 欧美另类z0zxhd电影| 亚洲精品视频一区| 成人影视亚洲图片在线| 日韩精品一区二区三区视频| 亚洲午夜激情av| 色综合中文字幕国产 | 精品视频色一区| 亚洲四区在线观看| 国产成人三级在线观看| 26uuu亚洲| 日本欧美一区二区在线观看| 欧美揉bbbbb揉bbbbb| 一区二区三区日韩精品视频| 99久久国产综合色|国产精品| 精品国产乱子伦一区| 久久激情五月婷婷| 欧美电影免费观看完整版| 日韩电影在线观看电影| 欧美日韩一区二区三区不卡| 亚洲欧美国产高清| 欧日韩精品视频| 亚洲在线免费播放| 欧美日韩在线不卡|