zoukankan      html  css  js  c++  java
  • 在文件中查找字符串

    package test;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    
    public class test {
        public static void main(String[] args) {
            test t=new test();
            String string =t.du();
            System.out.println(string);
    //        要检索的字符串
            String s="You";
            int k=t.cha(string, s);
            System.out.println("文章中"+s+"出现的次数是:"+k);
            
            
            
            
        }
        
        
        
    //    读取文章的内容
        public String du(){
            String str="";
            FileInputStream fis=null;
            InputStreamReader reader=null;
            File f=new File("F:/test/java.txt");
            
            try {
                fis=new FileInputStream(f);
                reader=new InputStreamReader(fis);
    //            创建字符数组
                char []c=new char[100];
    //            创建长度
                int length=0;
                
                try {
                    while((length=reader.read(c))>0){
                        str+=new String(c, 0, length);
                        
                    }
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                
                
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return str;
            
            
        }
        
        public int cha(String s,String sd){
            int R=0;
            s=s.toUpperCase();
            sd=sd.toUpperCase();
    //        定义正则表达式
            Pattern p=Pattern.compile("\b"+sd+"\b");
    //        匹配器
            Matcher m=p.matcher(s);
            
            int start=0;
            
            while(true){
                boolean f= m.find(start);
                if(f){
                    R++;
    //                返回上一次找到位置的下标,第二次从指定位置开始
                    start=m.end();
                }
                else{
                    break;
                }
                
            } 
            
            
            return R;
            
        }
        
        
    }
  • 相关阅读:
    进程、线程
    timer控件、三级联动
    用户控件、动态创建添加
    打印控件
    窗体移动和阴影,对话框控件
    winform listview控件
    winform打开唯一窗体、构造函数传值
    菜单和工具栏
    winform公共控件
    hibernate中各种包的添加
  • 原文地址:https://www.cnblogs.com/xiaoqisfzh/p/4732870.html
Copyright © 2011-2022 走看看