자바 방법에 관한 문제는 txt 파일을 편집합니다

Atif_karim :
public static void Replace_Record(String editTerm, String newItem, String newAmount, String newPrice){
        String filepath="temp_Food_Item.txt";
        String tempfile= "temp_Food_Item_temp.txt";
        File oldFile= new File(filepath);
        File newFile=new File(tempfile);
        String item=""; String quantity=""; String price="";
        System.out.println("working ");
        try{
            //System.out.println("working pt1");
            FileWriter fw= new FileWriter(tempfile,true);
            BufferedWriter bw= new BufferedWriter(fw);
            PrintWriter pw= new PrintWriter(bw);
            x = new Scanner(new File(filepath));
            x.useDelimiter("[,/n]");
            //System.out.println("working pt2");

            while(x.hasNext()){ 
                //System.out.println("working pt3");
                item=x.next();
                quantity=x.next();
                price=x.next();

                if(item.equalsIgnoreCase(editTerm)){

                    pw.println(newItem+","+newAmount+","+newPrice);
                }
                else{
                    //System.out.println("working pt4 ");
                    pw.println(item+","+quantity+","+price);
                }
            }
            x.close();
            pw.flush();
            pw.close();
            oldFile.delete();
            File dump=new File(filepath);
            newFile.renameTo(dump);
        }
        catch(Exception e){
            System.out.println("Error declared");
        }
    }

내가 디버깅하고 중지하십시오 도움을 잡으려고 간다 PT1 작업 후 발견, 그래서 내가 잘못 어디로 갔는지 이해가 안하지만 인쇄 "오류 선언"? 추가 정보는 다음과 같습니다 내가 레스토랑에 대한 데이터베이스를 만드는 중이라서 나는 순서에 TXT 파일의 정보를 입력하고 , ITEM_NAME의, item_amount ITEM_PRICE을 , 그것을 먼저 이론적으로, 나는 주에서 나의 새로운 가치를 복용 방법에 전달하고, 그래서 그것이 내가 제거 싶어 문자열에 제공 한 다음을 대체하고 실제 파일에서 문자열을 복사 다시 때까지 파일을 복제합니다. 하지만이를 실행할 때마다 나는 캐치를 얻을.

TIA

PaianganuOm :

내가 바로 귀하의 질문에 대답 할 수는 없지만, 나는 몇 가지 아이디어를 제공 할 수 있습니다.

첫째, 좀 더 명시 적으로 예외를 잡는 등 예외 : IOException, FileNotFoundException이 등을. 더 명시 적으로 코드를 가지고 일반적으로 좋은 습관이며 향상된 오류 처리의 첫 걸음입니다.

또한, 함께 무언가를 재 기동을 위해 당신은 당신의 콘솔에 인쇄하고 그 정보를 사용할 수있는 디버깅 프로그램을. 그것은 당신의 오류가 어디 그것이 정확히 무엇인지를 알 수 있습니다.

추천

출처http://10.200.1.11:23101/article/api/json?id=403005&siteId=1