アイデアは、最初のファイルから読み込まれ、その後、単語列に単語を書き込みされ、ここで、アレイは動作します。まず、各単語の最初の文字と最後の文字を取得し、それが最後まで終了か否かが判断される、最初の単語は、第一の端部に端部が続く場合は、StringBufferオブジェクトに書き込まれ、その後、順次内部オブジェクトに書き込まれ、最終的にターゲットライト出力ファイルに。判決の様々な段階については、単に文がライン上で判断される場合には、以下の詳細なコードで使用します。
パッケージのテスト; インポートするjava.applet.Applet; 輸入java.io.BufferedReader; インポートのjava.io.File; 輸入java.io.FileReader。 輸入java.io.FileWriter; インポートにjava.io.IOException; パブリック クラスLian2 { 公共 静的 ボイドメイン(文字列[]引数)がスローにIOException { // TODO自动生成的方法存根 文字列のファイル名 = "D:\\大二下\\软件工程\\ INPUT.TXT"を、 ファイル = 新しい ファイル(ファイル名); // judeFileExists(A); もし(judeFileExists(A)) { danci(ファイル名)。 } 他 { するSystem.out.println( "文件不存在" )。 } } パブリック 静的 ボイド danci(String s)文字スローにIOException { BufferedReaderのBR = 新しい BufferedReaderの(新しいFileReaderの(単数または複数))。 StringBufferのSB = 新しいStringBufferを(); 文字列のテキスト = nullを。 しばらく((テキスト= br.readLine())!= nullの){ sb.append(テキスト); // 読み出し文字がStringBufferのに添付されている } br.close(); // 閉じるストリームに読み出す 文字列= sb.toString STR()toLowerCaseメソッド();. //はStringBufferのに変わりますそして小文字文字 列[] = str.split単語( "[^(Z-ZA-A)] +"); // 非単語分割の文字、すべての単語 IF(words.length 1 == ) { IF( "" .equals(単語[0 ])) のSystem.out.println( "NOワードファイル" ); 他 のSystem.out.println( "一つのワードファイル" ); } 他 { StringBufferの八尾 = 新しいStringBufferを(); 列b1 =ワード[0 ]。 yao.append(B1)。 yao.append( "" ); // するSystem.out.println(B1); ストリングの端= b1.substring(b1.length() - 1 、b1.length())。 // するSystem.out.println(終了)。 以下のために(int型 ; iはwords.length <I ++はI = 1 ) { 文字列起動 [i]は.substring(0,1 =単語を)。 もし(end.equals(開始)) { 終了言葉= [I] .substring(単語[I] .LENGTH() - 1。 、単語[I] .LENGTH()); yao.append(単語[I]); yao.append( "" ); } } 文字列T = yao.toString(); IF( "アップル" .equals(T)) { するSystem.out.println( "エンド・ワードに終わり" ); } ファイルファイル = 新しい新しいファイル(「D:\\年生下ソフトウェアエンジニアリングoutput1.txt \\ \\ " ); 試みる { file.createNewFile(); } キャッチ(IOExceptionを電子){ e.printStackTrace(); } 試みる{ てFileWriter FW = 新しいてFileWriter(ファイル)。 fw.write(yao.toString())。 fw.flush(); fw.close(); } キャッチ(IOExceptionを電子){ e.printStackTrace(); } } } // 判断文件是否存在 パブリック 静的 ブール judeFileExists(ファイルファイル){ 場合(file.exists()){ リターン trueに; } 他{ System.out.printlnは( "ファイルが存在しない" ); // 試み{ // file.createNewFile(); // }キャッチ(IOExceptionをE){ // TODO自動生成catchブロック // e.printStackTrace(); // } 戻り falseに; } } //はフォルダ(非修飾)があるか否かを判断する パブリック 静的 ボイドjudeDirExists(ファイルのファイル){ Ifは(file.exists()){ 場合(file.isDirectory()) { System.out.println( "DIRが存在します" )。 } 他{ するSystem.out.println(「同じ名前のファイルが存在し、DIRを作成することはできません」)。 } } 他{ するSystem.out.println( "DIRない存在は、それを作成..." )。 file.mkdir(); } } }