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

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

?? wordsegdemoframe.java

?? 本程序采用正向 逆向最大匹配才實現(xiàn)漢字分詞。
?? JAVA
字號:
import WordSegment.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.*;
import java.io.File;
import java.util.Vector;

import javax.swing.*;
/**
 * 
 */

/**
 * @author Truman
 *
 */
public class WordSegDemoFrame extends JFrame implements ActionListener {
	
	final static int ALGO_FMM = 1;
	final static int ALGO_BMM = 2;
	private JMenuBar menuBar = new JMenuBar();
	private JMenuItem openDicItem, closeItem;
	private JRadioButtonMenuItem fmmItem, bmmItem;
	private JMenuItem openTrainFileItem, saveDicItem, aboutItem;
	private JButton btSeg;
	private JTextField tfInput;
	private JTextArea taOutput;
	private JPanel panel;
	JLabel infoDic, infoAlgo;
	private WordSegment seger;
	private DicTrainer trainer = new DicTrainer();

	private void initFrame()
	{
		setTitle("Mini分詞器");
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		
		setJMenuBar(menuBar);
		
		JMenu fileMenu = new JMenu("文件");
		JMenu algorithmMenu =  new JMenu("分詞算法");
		JMenu trainMenu =  new JMenu("訓練語料");
		JMenu helpMenu =  new JMenu("幫助");
		openDicItem = fileMenu.add("載入詞典");
		fileMenu.addSeparator();
		closeItem = fileMenu.add("退出");
		
		algorithmMenu.add(fmmItem = new JRadioButtonMenuItem("正向最大匹配", true));
		algorithmMenu.add(bmmItem = new JRadioButtonMenuItem("逆向最大匹配", false));
		ButtonGroup algorithms = new ButtonGroup();
		algorithms.add(fmmItem);
		algorithms.add(bmmItem);
		
		openTrainFileItem = trainMenu.add("載入并訓練語料");
		saveDicItem = trainMenu.add("保存詞典");
		
		aboutItem = helpMenu.add("關于Word Segment Demo");		
		
		menuBar.add(fileMenu);
		menuBar.add(algorithmMenu);
		menuBar.add(trainMenu);
		menuBar.add(helpMenu);
		openDicItem.addActionListener(this);
		closeItem.addActionListener(this);
		openTrainFileItem.addActionListener(this);
		saveDicItem.addActionListener(this);
		aboutItem.addActionListener(this);	
		fmmItem.addActionListener(this);
		bmmItem.addActionListener(this);
		
		JPanel topPanel = new JPanel();
		topPanel.setLayout(new FlowLayout());
		JPanel centerPanel = new JPanel();
		centerPanel.setLayout(new GridLayout());
		JPanel bottomPanel = new JPanel();
		this.getContentPane().add(topPanel, BorderLayout.NORTH);
	    this.getContentPane().add(centerPanel, BorderLayout.CENTER);
	    this.getContentPane().add(bottomPanel, BorderLayout.SOUTH);

		btSeg = new JButton("分詞");
		tfInput = new JTextField("", 30);
		taOutput = new JTextArea();
		topPanel.add(tfInput);
		topPanel.add(btSeg);
		
		centerPanel.add(taOutput);
		
		infoDic = new JLabel();
		infoAlgo = new JLabel();
		bottomPanel.add(infoDic);
		bottomPanel.add(infoAlgo);
		saveDicItem.setEnabled(false);
		btSeg.addActionListener(this);
	}
	
	public WordSegDemoFrame() 
	{ 
		initFrame();		
		seger = new WordSegment();
		loadDic("dic.dat");
		setAlgo(ALGO_FMM);		
	} 
	
	private void loadDic(String fileName)
	{
		seger.SetDic(fileName);
		infoDic.setText("詞典 " + fileName + "已載入");
	}
	
	private void setAlgo(int type)
	{
		String algo = null;
		switch(type)
		{
		case ALGO_FMM:
			seger.setStrategy(new FMM());
			algo = "FMM";
			break;
		case ALGO_BMM:
			seger.setStrategy(new BMM());
			algo = "BMM";
			break;
		}
		infoAlgo.setText("分詞算法:" + algo);
	}
	
	private File openFile()
	{
		JFileChooser chooser = new JFileChooser();
        int ret = chooser.showOpenDialog(this);

        if (ret != JFileChooser.APPROVE_OPTION) {
        	return null;
        }

        File f = chooser.getSelectedFile();
        if (f.isFile() && f.canRead()) 
        {
        	return f;
        } 
        else 
        {
            JOptionPane.showMessageDialog(this,
                    "Could not open file: " + f,
                    "Error opening file",
                    JOptionPane.ERROR_MESSAGE);
            return null;
        }
        
	}
	
	private void trainDic(File f)
	{
		trainer.Train(f.getAbsolutePath());
		seger.SetDic(trainer.getDic());
		infoDic.setText("訓練完成,新的詞典已載入");		
		saveDicItem.setEnabled(true);
	}
	
	private void saveDic()
	{
		 JFileChooser chooser = new JFileChooser();
         int ret = chooser.showSaveDialog(this);

         if (ret != JFileChooser.APPROVE_OPTION) {
             return;
         }

         File f = chooser.getSelectedFile();
         trainer.SaveDic(f.getAbsolutePath());
         infoDic.setText("詞典已保存到" + f.getAbsolutePath());
	}
	
	/* (non-Javadoc)
	 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
	 */
	public void actionPerformed(ActionEvent e) {
		if(e.getSource() == openDicItem)
		{
			File dicFile = openFile();
			if(dicFile == null)
				return;
			loadDic(dicFile.getAbsolutePath());
			saveDicItem.setEnabled(false);
			return;
		}
		if(e.getSource() == closeItem)
		{
			dispose();
			System.exit(0);
			return;
		}
		if(e.getSource() == openTrainFileItem)
		{
			File trainFile = openFile();
			if(trainFile == null)
				return;
			else
				trainDic(trainFile);
			return;
		}
		if(e.getSource() == saveDicItem)
		{
			saveDic();
			return;
		}
		if(e.getSource() == aboutItem)
		{
			JOptionPane.showMessageDialog(this, "作者:Truman\nemail: trumanhe@gmail.com", "關于Mini分詞器", 
                    JOptionPane.INFORMATION_MESSAGE);

			return;
		}
		if(e.getSource() == fmmItem)
		{
			setAlgo(ALGO_FMM);
			return;
		}
		if(e.getSource() == bmmItem)
		{
			setAlgo(ALGO_BMM);
			return;
		}
		if(e.getSource() == btSeg)
		{
			String sentence = tfInput.getText();
			Vector vec = seger.Segment(sentence);
			taOutput.setText("");
			for(int i=0;i<vec.size();i++)
				taOutput.append(vec.get(i) + "  ");
			return;
		}
		
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		WordSegDemoFrame window = new WordSegDemoFrame();
		Toolkit theKit = window.getToolkit();
		Dimension wndSize = theKit.getScreenSize();
		
		window.setBounds(wndSize.width/4, wndSize.height/4,
						wndSize.width/2, wndSize.height/2);
		window.setVisible(true);		
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产乱码久久久久久牛牛| 国产91丝袜在线播放九色| 欧美在线小视频| 一区二区三区在线看| 91丨九色丨蝌蚪富婆spa| 亚洲色图都市小说| 欧美精品一二三区| 美脚の诱脚舐め脚责91| 精品国产免费人成电影在线观看四季| 麻豆国产精品官网| 久久精品日产第一区二区三区高清版 | 国产精品一卡二| 中文字幕欧美日韩一区| 欧美亚洲国产bt| 免费高清视频精品| 亚洲国产精品99久久久久久久久| 91麻豆免费看| 免费成人在线视频观看| 欧美经典一区二区| 91国产免费看| 激情成人综合网| 最新久久zyz资源站| 欧美色视频一区| 国产一区二区三区免费观看| 自拍偷拍国产亚洲| 91麻豆精品国产91久久久久久久久 | 91精品麻豆日日躁夜夜躁| 激情综合网天天干| 一区二区三区在线不卡| 日韩免费一区二区| 91小视频在线| 精品一区二区三区视频| 《视频一区视频二区| 欧美一区二区三区人| 成人高清视频免费观看| 免费观看在线色综合| 国产精品福利av| 日韩视频永久免费| 色婷婷综合久久久中文字幕| 麻豆91免费观看| 亚洲青青青在线视频| 日韩欧美美女一区二区三区| 色综合天天性综合| 久久爱www久久做| 一区二区三区高清不卡| 久久久av毛片精品| 8x8x8国产精品| 91视频免费播放| 国产成人免费视频| 美国一区二区三区在线播放| 亚洲在线一区二区三区| 国产精品久久久久影院亚瑟| 日韩一区二区免费高清| 欧美网站一区二区| 色综合一个色综合| www.成人在线| 高清av一区二区| 国产麻豆精品在线| 美国欧美日韩国产在线播放| 午夜视频一区二区三区| 亚洲欧美偷拍三级| 一区精品在线播放| 欧美国产激情一区二区三区蜜月| 亚洲精品一区二区三区蜜桃下载 | 91精品国产综合久久国产大片| 91亚洲精品久久久蜜桃网站| 国产成人av自拍| 狠狠色狠狠色综合系列| 久久成人精品无人区| 蜜桃精品视频在线观看| 日韩av一级电影| 日韩精品色哟哟| 婷婷综合五月天| 午夜激情久久久| 五月天激情小说综合| 午夜精品免费在线| 91蜜桃免费观看视频| 亚洲激情av在线| 亚洲欧洲综合另类| 亚洲免费在线视频一区 二区| 一区精品在线播放| 亚洲黄色免费电影| 亚洲激情中文1区| 一区二区三区四区av| 一卡二卡三卡日韩欧美| 亚洲成人激情综合网| 舔着乳尖日韩一区| 日本不卡的三区四区五区| 免费成人美女在线观看| 麻豆成人久久精品二区三区红| 黄页网站大全一区二区| 国产成人免费视频一区| 99re热这里只有精品免费视频| av网站免费线看精品| 91国偷自产一区二区使用方法| 欧美性感一区二区三区| 91精品国产麻豆| 26uuuu精品一区二区| 国产拍欧美日韩视频二区| 国产精品久久免费看| 亚洲一区二区高清| 精品一区中文字幕| www.日韩精品| 欧美三级一区二区| 日韩网站在线看片你懂的| 国产欧美va欧美不卡在线| 中文字幕在线观看一区| 亚洲电影一级黄| 久久se精品一区精品二区| 国产白丝精品91爽爽久久| 色综合久久综合网97色综合 | 国产高清亚洲一区| 91天堂素人约啪| 欧美一级黄色大片| 中文字幕在线一区| 日本不卡一二三区黄网| 东方aⅴ免费观看久久av| 色国产精品一区在线观看| 欧美成人aa大片| 在线一区二区三区四区五区| 欧美日韩一级二级三级| 欧美精品一区二区三区很污很色的 | 午夜精品影院在线观看| 久久看人人爽人人| 久久新电视剧免费观看| 日韩精品一区在线观看| 91黄视频在线观看| 亚洲bdsm女犯bdsm网站| 欧美日韩中文字幕一区| 国产精品日韩成人| 九九久久精品视频| 欧美电影免费观看高清完整版在线 | 亚洲婷婷国产精品电影人久久| 天天综合日日夜夜精品| 欧美男生操女生| 午夜国产不卡在线观看视频| 国产 日韩 欧美大片| 中文字幕一区二| 亚洲不卡av一区二区三区| 欧美日韩一区高清| 亚洲成av人综合在线观看| 91国产福利在线| 亚洲一区二区三区影院| 制服视频三区第一页精品| 国产日韩精品一区二区三区在线| 精品午夜久久福利影院| 4438成人网| 国产一区二区免费看| 国产精品护士白丝一区av| 国产精品资源网| 国产精品视频看| 成人免费观看男女羞羞视频| 国产蜜臀97一区二区三区| 成人av综合一区| 日韩欧美另类在线| 色天使久久综合网天天| 亚洲午夜在线电影| 粉嫩高潮美女一区二区三区| 国产日韩一级二级三级| 色综合视频在线观看| 国产欧美一区二区在线| 成人高清视频在线观看| 国产精品国产自产拍高清av王其| 国产二区国产一区在线观看| 国产欧美一区二区三区鸳鸯浴| 色美美综合视频| 久久99在线观看| 久久免费美女视频| 成人av午夜影院| 国产jizzjizz一区二区| 三级成人在线视频| 国产精品伦一区| 欧美精选在线播放| 99国产精品视频免费观看| 久久精品久久精品| 日韩国产欧美在线观看| 国产欧美中文在线| 久久久亚洲精品一区二区三区 | 国产精品一区二区果冻传媒| 69av一区二区三区| 亚洲一区二区三区爽爽爽爽爽| 在线免费精品视频| 亚洲一区二区免费视频| 欧美色精品在线视频| 亚洲成在人线在线播放| 欧美丰满一区二区免费视频| 蜜桃久久久久久久| 久久色.com| 成人的网站免费观看| 中文字幕一区二区三区在线播放| 91玉足脚交白嫩脚丫在线播放| 亚洲最大成人网4388xx| 欧美另类变人与禽xxxxx| 蜜臀av一级做a爰片久久| 国产亚洲欧美在线| 在线一区二区视频| 毛片av一区二区| 最新国产の精品合集bt伙计| 欧美日韩亚洲不卡| 韩国毛片一区二区三区|