A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/**

题目:

一个汉字代表一个数字,相同的汉字代表相同的数字。



     学习

*     学

—————

好好好

三个汉字都为0到9的数字

学=(),习=(),好=()



设计程序,求出各个汉字代表的数字。



需求:利用IO流,将D:\question.txt文件中的题目要求复写到E盘的answer.txt文件中,并将最终结果也写在该文件中



思路:1.读取D\\question.txt文件中的题目,并复写到answer.txt中

         2.利用for循环求出各个汉字的数值

         3.将答案运用字节流输出流写入answer.txt中







*/

import java.io.*;

class GuessNum

{

       public static void main(String[] args)

       {

              copy();

              answer();

       }

       public static void copy()

       {   

              BufferedReader br = null;

              BufferedWriter bw = null;

              try

              {

                     br = new BufferedReader(new FileReader("D:\\question.txt"));

                     bw = new BufferedWriter(new FileWriter("E:\\answer.txt"));

                     String len = null;

                     while((len = br.readLine())!=null)

                     {

                            bw.write(len);

                            bw.newLine();

                            bw.flush();

                     }                  

              }

              catch (IOException e)

              {

                     throw new RuntimeException("读取问题失败");

              }

              finally

              {

                     try

                     {

                            if(br!=null)

                                   br.close();

                     }

                     catch (IOException e)

                     {

                            throw new RuntimeException("读取关闭失败");

                     }

                     try

                     {

                            if(bw!=null)

                                   bw.close();                          

                     }

                     catch (IOException e)

                     {

                            throw new RuntimeException("写入关闭失败");

                     }

              }



       }

       public static void answer()

       {

              BufferedWriter bos = null;

              try

              {

                     bos =new BufferedWriter(new OutputStreamWriter(new FileOutputStream("E:\\answer.txt",true)));

                     String str = null;

                     int xue,xi,hao,num;

                     for(hao=1;hao<=9;hao++)

                            for(xi=0;xi<=9;xi++)

                                   for(xue=1;xue<=9;xue++)

                                   {

                                          num = xue*(xue*10+xi);

                                          if(num==hao*111)

                                          {

                                                 str = "学="+xue+",习="+xi+",好="+hao+"\r\n";

                                                 try

                                                 {

                                                        bos.write(str);

                                                 }

                                                 catch (IOException e)

                                                 {

                                                        throw new RuntimeException("答案写入失败");

                                                 }

                                          }

                                   }

              }

              catch (IOException e)

              {

                            throw new RuntimeException("写入流初始化失败");

              }

              finally

              {

                     try

                     {

                            if(bos!=null)

                            bos.close();                        

                     }

                     catch (IOException e)

                     {

                            throw new RuntimeException("写入流关闭失败");

                     }

            

              }

       }

}

1 个回复

倒序浏览
你好 看下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马