중화사전망 - 서예자전 - Java 사전 확인

Java 사전 확인

Java.io. *;

Java.awt. *;

Java.awt.event. *;

Java.util.vector 가져오기

Java.io.file 을 가져옵니다

Java.util.vector 가져오기

계급 언어 통계

{Vector allWorsd, noSameWord

문자 통계

{allworsd = newvector ();

Nosameword = newvector ();

}

공용 void 단어 통계 (문서 파일)

{try {random access file in one = new random access file (파일, "rw"); //파일 file 의 inOne 을 가리키는 객체를 만듭니다.

Random access file intwo = new random access file (파일, "rw"); //파일 file inTwo 를 가리키는 개체를 만듭니다.

Long wordStarPostion = 0, wordendsposition = 0;;

Longlength = inone.length ();

Intflag =1;

Int c =-1;

For(int k = 0;; K<= 길이; K++)

{c = inone.read (); // inOne 은 read () 메서드를 호출합니다.

Boolean boo =(c<;; =' z' amp; & ampc & gt =' a') | | (c < =' z' amp; & ampc & gt =' a');

만약 (쉿)

{if(flag = = 1)

{wordstar position = inone.getfilepointer ()-1;

Flag = 0;;

}

}

기타

{if(flag = = 0)

{

If(c = =- 1)

Wordendposition = inone.getfilepointer ();

기타

Wordendposition = inone.getfilepointer ()-1;

Intwo.seek (wordstarposition); // inTwo 는 seek 메서드를 호출하여 읽기 및 쓰기 위치를 wordStarPostion 으로 이동합니다.

Byte cc [] = new byte [(int) wordendposition-(int) wordstar position];

Int wo. read fully (cc); // inTwo 는 read fully(byte a) 메서드를 호출하고 cc 를 a 에 전달합니다.

String word = 새 문자열 (cc);

Allworsd.add (word);

만약 (! (no same word. contains(word)))

No same word.add (word);

}

Flag =1;

}

}

Inone.close ();

Intwo.close ();

}

Catch (예외 e){}

}

공통 벡터 getAllWorsd ()

{return allWorsd

}

공통 벡터 getNoSameWord ()

{return noSameWord

}

}

StatisticFrame 클래스 확장 프레임워크는 ActionListener 를 구현합니다

언어 통계

TextArea showMessage

버튼을 눌러 파일을 엽니다.

파일 dialog 파일 dialog 열기

벡터 allWord, noSameWord

공공 통계 프레임 워크 ()

{statistic = new word statistic ();

Showmessage = newtextarea ();

OpenFile = 새로 만들기 버튼 ("파일 열기");

Openfile.addactionlistener (this);

추가 (openfile, BorderLayout). 북쪽);

Add(show message, BorderLayout). 중심);

Openfile dialog = new filedialog (this, 파일 열기 대화상자, filedialog). 하중);

Allword = newvector ();

Nosameword = newvector ();

Setsize (350,300);

Setvisible (true);

AddWindowListener (새 WindowAdapter ()

{공용 유효하지 않은 창 닫기 (WindowEvent e)

{system.exit (0);

}

});

Validate ();

}

공용 void 작업 수행 (트랜잭션 e)

{nosameword.clear ();

Allword.clear ();

Showmessage.settext (null);

Openfiledialog.setvisible (true);

Stringfilename = openfiledialog.getfile ();

만약 (파일 이름! =null)

{statistic.wordStatistic (새 파일 (파일 이름));

Allword = statistic.getallworsd ();

Nosameword = statistic.getnosameword ();

Showmessage.append ("\ n"+filename+"contains"+allword.size ()+"영어 단어");

메시지를 표시합니다. Append ("+nosameword.size ()+"다른 영어 단어 ");

메시지를 표시합니다. 추가 ("사용 빈도 순서로: \ n");

Intcount [] = new int [no sameword.size ()];

For(int I = 0;; 나 & ltno sameword.size (); I++)

{string s1= (string) no sameword.element at (I);

For(int j = 0;; J & ltallword.size (); J++)

{strings2 = (string) all word.element at (j);

If(s 1. equals(S2))

Count [I]++;

}

}

For(int m = 0;; M & ltnosameword.size (); M++)

{for (int n = m+1; N & ltnosameword.size (); N++)

{if (count [n] > 수 [m])

{stringtemp = (string) no sameword.element at (m);

No same word.setelementat ((string) no same word.element at (n), m);

No same word. setelementat(temp, n);

Int t = count [m];

수 [m] = 수 [n];

Count [n] = t;

}

}

}

For(int m = 0;; M & ltnosameword.size (); M++)

{showmessage.append ("\ n"+(string) no sameword.element at (m)+

":"+count [m]+"/"+allword.size ()+

"="+(1.0 * count [m])/all word.size ();

}

}

}

}

공용 클래스 sy6_2

{공용 정적 void main (문자열 매개 변수 [])

{new statisticframe ();

}

}