课堂练习之“寻找最长单词链”

package test;
//20173522 李秦
import java.applet.Applet;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class Lian2 {

    public static void main(String[] args) throws IOException {
        // TODO 自动生成的方法存根

        String filename ="D:\\大二下\\软件工程\\input.txt";
        File  a=new  File(filename);
     //judeFileExists(a);
     if(judeFileExists(a))
        {
            danci(filename);
        }
     else
        {
         System.out.println("文件不存在");
        }
         
        
    }

    public static void danci(String s) throws IOException {
           
            BufferedReader br = new BufferedReader(new FileReader(s));
            StringBuffer sb = new StringBuffer();
            String text = null;
            while ((text = br.readLine()) != null) {
                sb.append(text);// 将读取出的字符追加到stringbuffer中
            }
            br.close(); // 关闭读入流
            String str = sb.toString().toLowerCase(); // 将stringBuffer转为字符并转换为小写
            String[] words = str.split("[^(a-zA-Z)]+"); // 非单词的字符来分割,得到所有单词
            if(words.length==1)
            {
                if("".equals(words[0]))
                System.out.println("文件中无单词");
                else
                    System.out.println("文件中只有一个单词");
            }

            else
            {
                StringBuffer yao = new StringBuffer();
                String b1=words[0];
                yao.append(b1);
                yao.append(" ");
                //System.out.println(b1);
                String end=b1.substring(b1.length()-1,b1.length());
                //System.out.println(end);
               for(int i=1;i<words.length;i++)
               {  
                String start=words[i].substring(0,1);
                if(end.equals(start))
                {
                    end=words[i].substring(words[i].length()-1,words[i].length());
                    yao.append(words[i]);
                    yao.append(" ");
                }
                
               }

              String t=yao.toString();            
              if("apple ".equals(t))
              {
                  System.out.println("没有首尾相连的单词");
              }
               File file =new File("D:\\大二下\\软件工程\\output1.txt");
                try {
                     file.createNewFile();
                } catch (IOException e) {
                   e.printStackTrace();      
               }
              
                try {
                    
                      FileWriter fw =new FileWriter(file);
                      fw.write(yao.toString());
                      fw.flush();
                      fw.close();
                }
                catch (IOException e) {
                       e.printStackTrace();      
                   }
            }
         
    }


// 判断文件是否存在
public static boolean judeFileExists(File file) {

    if (file.exists()) {
        
        return true;
    } else {
        System.out.println("文件不存在");
        // try {
        //     file.createNewFile();
       //  } catch (IOException e) {
       // TODO Auto-generated catch block
      //      e.printStackTrace();      
     //   }
        return false;
    }
}
// 判断文件夹是否存在(未修改)
public static void judeDirExists(File file) {

    if (file.exists()) {
        if (file.isDirectory()) {
            System.out.println("dir exists");
        } else {
            System.out.println("the same name file exists, can not create dir");
        }
    } else {
        System.out.println("dir not exists, create it ...");
        file.mkdir();
    }

}
}

 

转载于:https://www.cnblogs.com/lq13035130506/p/10994730.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值