1.请写出一个尽可能完整的通用的java程序,分析如下字符串,类似“123456@tom”,把“@tom从该字符串移走”,即仅出现“123456”2.有一个目录名为“performance”的目录,他下面有一些ASCII文件,请写一个java程序,查找这些ASCII格式的文件中包含有“csdn_java”的字段,并且替换成“google”。如果面临大量的文件进行同样的处理需求,如果通过程序来改善对于计算机系统的压力?

解决方案 »

  1.   

    第1题public String transfer(String s) {
      int index = s.indexOf("@");
      if (index>=0) return s.substring(0,index)
      else return s;
    }
      

  2.   

    修正一下:public String transfer(String s) {
      if (s==null) return null;
      int index = s.indexOf("@");
      if (index>=0) return s.substring(0,index)
      else return s;
    }
      

  3.   

    关键是第2题  是不是使用java的ascii2native可以啊
      

  4.   

    第1个:
    if(null != mail)
            {
                Pattern p = Pattern.compile("(\\w+)@.+");
                Matcher m = p.matcher(mail);
                if(m.find())
                {
                    System.out.println(m.group(1));
                }
            }
      

  5.   

    第二題所謂系統壓力應該是指頻繁的磁盤操作吧,而不應是長時的磁盤操作吧感覺也不會有什麽技巧,事先判斷下是不是ascii文件?再儘量一次性讀完至內存,修改,再一次性寫入所有文件