2016-04-24 9 views

答えて

1

ファイルではなく、ファイル自体の内容を削除したい場合は、あなたができる:

how to delete the content of text file without deleting itself:グーグルの

PrintWriter pw = new PrintWriter("file.txt"); 
pw.close(); 

数秒は私にこれを得ました

How to clear a text file without deleting it?

は、ファイルを完全に削除するには実行します。これを行うには

File file = new File("file.txt"); 
f.delete(); 
0

File.delete()を呼び出します。は、この抽象パス名で示されるファイルまたはディレクトリを削除します。

File f = new File("foo.txt"); 
if (f.delete()) { 
    System.out.println("file deleted"); 
} 
0

私は、ファイルを上書きする必要がある主な理由...

一つの方法は、File.delete()またはFiles.delete(Path)を使用してファイルを削除することです。後者は、削除が失敗する理由を教えてくれるので、望ましいものです。

もう1つの方法は、単にファイルを開いて書き込みを行うことです。 「追加」モードで開くのでなければ、書き込むファイルを開くとファイルがゼロバイトに切り詰められます。


これら2つのアプローチの動作には微妙な違いがあります。ファイルを削除して新しいファイルを作成すると、同じファイルを開いている他のアプリケーションには通知されません。対照的に、ファイルを切り捨てると、ファイルが開かれている他のアプリケーションは、は読み取り時の切り捨ての影響を観察します。

実際、これはプラットフォームによって異なります。いくつかのプラットフォームでは、別のファイルが書き込み用にオープンされていることを読み取るためにファイルをオープンしようとするJavaアプリケーションは例外を受け取ります。

0

はい、FileOutputStreamとすることができます。与えられたすべての答えはPrintWriterだが、同じことはFileOutputStreamで行うことができる。空白のint表現は32です。したがって、FileOutputStreamのインスタンスにファイルを渡すだけです。 FileOutputStream out = new FileOutputStream(file); out.write(32);

これにより、ファイルの内容がクリアされます。確かにこれを使用したいのはFileOutputStreamとしたい場合にのみPrintWriterを使用してください。

関連する問題