indexer.java

来自「用java完成的查字典程序」· Java 代码 · 共 53 行

JAVA
53
字号
import java.io.*;
public class Indexer{
	private File indexFile;
	private File dicFile;
	public Indexer(){
		 indexFile=new File("index.txt");
		 dicFile=new File("dictionary.txt");	
	}
	public void generateIndex(){
		System.out.println("正在创建索引........");
		int wordIndex=0;
//		byte[] b=new byte[1];
//		byte bvalue=0;
		int ipointer=0;
		StringBuffer wordtemp=new StringBuffer();
		String word="";
		try {
			int item=0;
			char c=0;
	        FileInputStream fis = new FileInputStream(dicFile);
	        while ((item=fis.read())!= -1) {	        	
	        	c=(char)item;  	        		              
	            if(c=='\n'){
	            	wordIndex=ipointer+1;
	            	wordtemp.setLength(0);	
	            }
	            if(c=='['){
	            	word=wordtemp.toString();
	            	wordtemp.setLength(0);
//	            System.out.println(word);
//	            System.out.println(wordIndex);
                    RandomAccessFile raf=new RandomAccessFile(indexFile,"rw");
                    raf.seek(indexFile.length());
                    raf.writeBytes(word+" ");
                    raf.writeBytes(wordIndex+"\n");
                    raf.close();
	            }
	            if(c!='\n'){
	            	wordtemp.append(c); 
	            }	     	            
	            ipointer++;    
            }
            fis.close();
	     } catch (IOException e) {
	         e.printStackTrace();
	     }
	     System.out.println("索引建立完毕");
	}
	public static void main(String[] args){
		Indexer indexer=new Indexer();
		indexer.generateIndex();
	}	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?