TXTファイルを編集するためのJavaメソッドに関する問題

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をなどを、。より明示的なコードを持っていることが一般的に良い習慣で、それが改善されたエラー処理に向けた最初のステップです。

また、それと何かをstartesためにあなたは、あなたのコンソールでそれを印刷し、その情報を使用することができ、デバッグプログラムを。それはあなたの誤差があり、それがどこにあるか正確に何を教えてくれかもしれません。

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=403007&siteId=1