标题:输入输出流的问题,帮忙纠错和改进一下....
只看楼主
yueqi933
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-5-28
结帖率:100%
 问题点数:0 回复次数:1 
输入输出流的问题,帮忙纠错和改进一下....
(1)用输出流将如下内容写入文本文件“人员.txt”。
姓名 性别 年龄  学历  工资       岗位
     约翰  男  30    硕士 100000.00 银行行长
     迈克  男  28    博士 200000.00 董事长
     詹尼  女  24    硕士 150000.00 主任
     … …

(2)用输入流读出文件“人员.txt”内容,输出到屏幕上。

(3)用输出流读出文件“人员.txt”内容,输出到屏幕上,统计男员工个数和女员工个数及所有人员的平均工资。



求纠错和改进...
import *;
class WriteFile{
   public boolean writeFile(String str,String path,int i){
    boolean check=true;
    if(i==0){
            check=false;}
         File fie=new File(path);                        
            try{
        FileWriter outFile=new FileWriter(fie,check);
        BufferedWriter bufferOut=new BufferedWriter(outFile);
        bufferOut.write(str);                     
        bufferOut.flush();                                 
        bufferOut.close();                             
        return true;                                       
        }
     catch(IOException e){return false;}           
   }
}
    class ReadFile{
   public boolean readFile(String path){
          int mancnt=0;                           
          int woncnt=0;                             
          float agemony=0;                          
       try{
        StringBuffer sb=new StringBuffer();                 
        BufferedReader br=new BufferedReader(new FileReader(path));         
        String str=br.readLine();                  
          while(str !=null){                                 
            sb.append(str);
          sb.append("\r\n");
          str=br.readLine();
          }
          str=sb.toString();
          System.out.println(str);
          String[] st=str.split("\r\n");
          for(int i=1;i<st.length;i++){
             String st1=st[i];
             if(st1.split("\\s{2,}")[1].equals(""))
              mancnt++;
             else
              woncnt++;
             agemony+=Float.parseFloat(st1.split("\\s{1,}")[4]);
          }
      System.out.println(":'"+mancnt+"'");
          System.out.println(":'"+woncnt+"'");        
          System.out.println(":'"+agemony/st.length+"'");
          return true;
       }catch(IOException e){return false;}  
   }
}
public class OperatFile{
    public static void main(String[] args){
        boolean check=true;
        String[] str={"姓名 性别 年龄  学历  工资       岗位"
     "约翰  男  30    硕士 100000.00 银行行长"
     "迈克  男  28    博士 200000.00 董事长"
     "詹尼  女  24    硕士 150000.00 主任"}

        String path="人员.txt";
        WriteFile wf=new WriteFile();
        ReadFile rf=new ReadFile();
        for(int i=0;i<str.length;i++){
            check=wf.writeFile(str[i],path,i);
            check=wf.writeFile("\r\n",path,1);
            if(!check){   
               System.exit(1);
            }
         }  
        System.out.println("");
       rf.readFile(path);
     }
}
搜索更多相关主题的帖子: public 人员 董事长 平均工资 
2013-05-29 00:37
yueqi933
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2011-5-28
得分:0 
...
2013-05-30 23:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-412481-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017420 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved