为了账号安全,请及时绑定邮箱和手机立即绑定

java.lang.Error:未解决的编译问题:

java.lang.Error:未解决的编译问题:

吃鸡游戏 2023-09-27 17:00:03
/* 使用属性列表的简单电话号码数据库 */我已经在 Eclipse 中多次运行这个程序,但这向我展示了未解决的编译问题package phoneBook;import java.io.*;import java.io.File;import java.util.Properties;class meths{           BufferedReader br=new BufferedReader(new InputStreamReader(System.in));    FileInputStream fin=null;    try {        fin=new FileInputStream("PhoneBook.txt");    }catch(FileNotFoundException e)    {        e.printStackTrace();    }    String name,number;    Properties pr=new Properties();    if(fin!=null)    {        try {            pr.load(fin); fin.close();        }catch(FileNotFoundException e)        {            e.printStackTrace();        }    }    void find() throws IOException    {               System.out.println("Enter name to find number");        name=br.readLine();        System.out.println("Number is:"+pr.getProperty(number));    }    void enter()    {        FileOutputStream fout=new FileOutputStream("PhoneBook.txt");        System.out.println("Enter name and number:");        name=br.readLine();number=br.readLine();        pr.put(name, number);        pr.store(fout, "Phone Boook");    }     void operation()        {               BufferedReader br=new BufferedReader(new InputStreamReader(System.in));            int opt=0;            System.out.println("1 for stop operation\n2 for enter new entry\n3 for searching number");            while(opt!=1)            {                // Reading option                try {                    opt=br.read();                } catch (IOException e) {                    e.printStackTrace();                }// Read opearation is complete                switch(opt)                {                case 2: enter();    break;                case 3: find();     break;                }            }        }}public class PhoneBook {    public static void main(String args[]) throws Exception    {``        meths ph=new meths();        ph.operation();    }}
查看完整描述

1 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

这是一个可能的更正:


package phoneBook;


import java.io.*;

import java.util.Properties;


class meths {

 BufferedReader br;

 FileInputStream fin;

 String name, number;

 Properties pr;

 File file;

 String path = "D:/PhoneBook.txt";


 public meths() {

    file = new File(path);

    pr = new Properties();

    br = new BufferedReader(new InputStreamReader(System.in));


    //If file doesn't exist, create it and load it

    if (!(file.exists() && file.canRead())){

        try {

            file.createNewFile();

        } catch (IOException e) {

            System.out.println("File can't be created");

        }

    }

        try {

            fin = new FileInputStream(file);

        } catch (FileNotFoundException e) {

            System.out.println("File can't be read");

        }


    // If file is not empty, load properties

    if (fin != null) {

        try {

            pr.load(fin);

            fin.close();


        } catch (IOException e) {

            System.out.println("Properties not loaded");

        }

     }

  }


 void find() throws IOException {

    System.out.println("\n>Enter name to find number:");

    name = br.readLine();

    System.out.println("Number is: " + pr.getProperty(name));

 }


 void enter() throws IOException {

    System.out.println("\n>Enter the name :");

    name = br.readLine();

    System.out.println("\n>Enter the number :");

    number = br.readLine();


    FileOutputStream fout = new FileOutputStream(file);


    pr.put(name, number);

    pr.store(fout, "Phone Boook");

 }


 void choice() throws IOException {

    System.out.println("\n>Enter your choice :");

 }


 public boolean isInteger(String chaine) {

    try {

        Integer.parseInt(chaine);

    } catch (NumberFormatException e) {

        return false;

    }

    return true;

  }


void operation() throws IOException {

    int opt = 0;


    System.out.println("1 for stop operation\n2 for enter new entry\n3 for searching number\n");


    while (opt != 1) {

        choice();

        String value = br.readLine();

        if (isInteger(value)) {

            opt = Integer.parseInt(value);

            switch (opt) {

            case 2:

                enter();

                break;

            case 3:

                find();

                break;

            }

         }

      }

   }

 }


 public class PhoneBook {


  public static void main(String args[]) throws Exception {

    meths ph = new meths();

    ph.operation();

  }

}

控制台视图:

https://img1.sycdn.imooc.com//6513ef790001a8f908630498.jpg

文件 :

https://img1.sycdn.imooc.com//6513ef8200012ed103210169.jpg

总之,我想说你必须学习基础知识才能理解类、构造函数、方法和成员的工作原理。



查看完整回答
反对 回复 2023-09-27
  • 1 回答
  • 0 关注
  • 94 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信