0

学校用に Java プロジェクトを作成していますが、ここで立ち往生しています。

.txt ファイルを作成し、キーボードからの入力を書き込むプログラムを作成したいと考えています。ただし、その前に、そのファイルが既に存在するかどうかを確認します。したがって、プログラムは同じ名前の新しいファイルを作成しませんが、その入力を以前に挿入されたデータに追加します。

つまり、そのプログラムを実行するたびに、その .txt ファイルに情報を追加できます。現時点では、そのファイルが既に存在するかどうかを確認することを除いて、すべて正常に動作します。私はexists();を追加しようとしました。しかし、成功しませんでした。

私はこれが初心者なので、すべての解決策ではないヒントを教えてください:)よろしくお願いします!

コード

private Formatter output;  //object

        public static String user_name() {
             String user_name=System.getProperty("user.name");
                return user_name;
            };


            public void openFile(){
                try {
                    output = new Formatter(user_name()+".txt");     //here I tried to add exists() method to check if the file exists already. but it responded //with undefined method error.      
                    }


                catch ( SecurityException securityException ) 
                {
                    System.err.println("Jums nav atļauja rediģēt šo failu");
                    System.exit(1); //izejama no programmas
                }
                catch (FileNotFoundException fileNotFoundException)
                {
                    System.err.print("Kļūda atverot failu");
                    System.exit(1); //izejama no programmas
                }
            }
4

1 に答える 1

2

このタスクには File オブジェクトを使用します。

 File f = new File("YourPathHere");

このファイル オブジェクトを取得したら、exists 関数を使用して、ファイルが存在するかどうかを確認できます。

 f.exists()   //returns true if mentioned file exists else return false

その後、コンテンツを既存のファイルに追加する場合 (技術的には追加操作と呼ばれます)、追加モードでファイルへのストリームを作成するように FileWriter オブジェクトに指示できます。

output = new BufferedWriter(new FileWriter(yourFileName, true));   //second argument true state that file should be opened in append mode
于 2013-11-02T11:38:14.223 に答える