FileInfo.Delete メソッド
ファイルを完全に削除します。
Overrides Public Sub Delete()
[C#]
public override void Delete();
[C++]
public: void Delete();
[JScript]
public override function Delete();
例外
例外の種類 | 条件 |
---|---|
IOException | Microsoft Windows NT が稼動しているコンピュータ上で、対象のファイルが開いているか、そのファイルにメモリが割り当てられています。 |
SecurityException | 呼び出し元に、必要なアクセス許可がありません。 |
UnauthorizedAccessException | 指定したパスはディレクトリです。 |
解説
ファイルが存在しない場合は、このメソッドは何も実行しません。
このメソッドの使用例については、以下の「使用例」を参照してください。その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。
実行するタスク | 参考例があるトピック |
---|---|
テキスト ファイルを作成する。 | ファイルへのテキストの書き込み |
テキスト ファイルに書き込む。 | ファイルへのテキストの書き込み |
テキスト ファイルから読み取る。 | ファイルからのテキストの読み取り |
テキストをファイルに追加する。 | ログ ファイルのオープンと追加 |
ファイルをコピーする。 | File.Copy |
ファイルの名前を変更、またはファイルを移動する。 | File.Move |
ディレクトリを削除する。 | Directory.Delete |
バイナリ ファイルから読み取る。 | 新しく作成したデータ ファイルの読み取りと書き込み |
バイナリ ファイルに書き込む。 | 新しく作成したデータ ファイルの読み取りと書き込み |
ディレクトリを作成する。 | CreateDirectory |
ディレクトリ内のファイルを参照する。 | Name |
ファイルの属性を設定する。 | SetAttributes |
Windows NT 4.0 プラットフォームに関する注意点: Delete は、通常の入出力用に開かれているファイルや、メモリが割り当てられているファイルは削除しません。
使用例
Delete メソッドの例を次に示します。
Imports System
Imports System.IO
Imports System.Text
Public Class Test
Public Shared Sub Main()
Dim path As String = "c:\temp\MyTest.txt"
Dim fi As FileInfo = New FileInfo(path)
Try
Dim sw As StreamWriter = fi.CreateText()
sw.Close()
Dim path2 As String = path + "temp"
Dim fi2 As FileInfo = New FileInfo(path2)
'Ensure that the target does not exist.
fi2.Delete()
'Copy the file.
fi.CopyTo(path2)
Console.WriteLine("{0} was copied to {1}.", path, path2)
'Delete the newly created file.
fi2.Delete()
Console.WriteLine("{0} was successfully deleted.", path2)
Catch e As Exception
Console.WriteLine("The process failed: {0}", e.ToString())
End Try
End Sub
End Class
[C#]
using System;
using System.IO;
class Test
{
public static void Main()
{
string path = @"c:\temp\MyTest.txt";
FileInfo fi1 = new FileInfo(path);
try
{
using (StreamWriter sw = fi1.CreateText()) {}
string path2 = path + "temp";
FileInfo fi2 = new FileInfo(path2);
//Ensure that the target does not exist.
fi2.Delete();
//Copy the file.
fi1.CopyTo(path2);
Console.WriteLine("{0} was copied to {1}.", path, path2);
//Delete the newly created file.
fi2.Delete();
Console.WriteLine("{0} was successfully deleted.", path2);
}
catch (Exception e)
{
Console.WriteLine("The process failed: {0}", e.ToString());
}
}
}
[C++]
#using <mscorlib.dll>
using namespace System;
using namespace System::IO;
int main() {
String* path = S"c:\\temp\\MyTest.txt";
FileInfo* fi1 = new FileInfo(path);
try {
StreamWriter* sw = fi1->CreateText();
if (sw) __try_cast<IDisposable*>(sw)->Dispose();
String* path2 = String::Concat(path, S"temp");
FileInfo* fi2 = new FileInfo(path2);
//Ensure that the target does not exist.
fi2->Delete();
//Copy the file.
fi1->CopyTo(path2);
Console::WriteLine(S"{0} was copied to {1}.", path, path2);
//Delete the newly created file.
fi2->Delete();
Console::WriteLine(S"{0} was successfully deleted.", path2);
} catch (Exception* e) {
Console::WriteLine(S"The process failed: {0}", e);
}
}
ファイルを作成し、閉じてから削除する例を次に示します。
Imports System
Imports System.IO
Public Class DeleteTest
Public Shared Sub Main()
' Create a reference to a file.
Dim fi As New FileInfo("temp.txt")
' Actually create the file.
Dim fs As FileStream = fi.Create()
' Modify the file as required, and then close the file.
fs.Close()
' Delete the file.
fi.Delete()
End Sub 'Main
End Class 'DeleteTest
[C#]
using System;
using System.IO;
public class DeleteTest
{
public static void Main()
{
// Create a reference to a file.
FileInfo fi = new FileInfo("temp.txt");
// Actually create the file.
FileStream fs = fi.Create();
// Modify the file as required, and then close the file.
fs.Close();
// Delete the file.
fi.Delete();
}
}
[C++]
#using <mscorlib.dll>
using namespace System;
using namespace System::IO;
int main() {
// Create a reference to a file.
FileInfo* fi = new FileInfo(S"temp.txt");
// Actually create the file.
FileStream* fs = fi->Create();
// Modify the file as required, and then close the file.
fs->Close();
// Delete the file.
fi->Delete();
}
[JScript]
import System;
import System.IO;
public class DeleteTest {
public static function Main() : void {
// Create a reference to a file.
var fi : FileInfo = new FileInfo("temp.txt");
// Actually create the file.
var fs : FileStream = fi.Create();
// Modify the file as required, and then close the file.
fs.Close();
// Delete the file.
fi.Delete();
}
}
DeleteTest.Main();
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
.NET Framework セキュリティ:
- FileIOPermission (ファイルの読み書き用) FileIOPermissionAccess.Write (関連する列挙体)
参照
FileInfo クラス | FileInfo メンバ | System.IO 名前空間 | 入出力操作 | ファイルからのテキストの読み取り | ファイルへのテキストの書き込み