Share via


File Kelas

Definisi

Menyediakan metode statis untuk pembuatan, penyalinan, penghapusan, pemindahan, dan pembukaan satu file, dan membantu dalam pembuatan FileStream objek.

public ref class File abstract sealed
public ref class File sealed
public static class File
public sealed class File
[System.Runtime.InteropServices.ComVisible(true)]
public static class File
type File = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type File = class
Public Class File
Public NotInheritable Class File
Warisan
File
Atribut

Contoh

Contoh berikut menunjukkan cara menggunakan File kelas untuk memeriksa apakah ada file, dan tergantung pada hasilnya, baik membuat file baru dan menulis ke dalamnya, atau membuka file yang ada dan membacanya. Sebelum menjalankan kode, buat c:\temp folder.

using namespace System;
using namespace System::IO;
int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   if (  !File::Exists( path ) )
   {
      
      // Create a file to write to.
      StreamWriter^ sw = File::CreateText( path );
      try
      {
         sw->WriteLine( "Hello" );
         sw->WriteLine( "And" );
         sw->WriteLine( "Welcome" );
      }
      finally
      {
         if ( sw )
                  delete (IDisposable^)(sw);
      }
   }

   // Open the file to read from.
   StreamReader^ sr = File::OpenText( path );
   try
   {
      String^ s = "";
      while ( s = sr->ReadLine() )
      {
         Console::WriteLine( s );
      }
   }
   finally
   {
      if ( sr )
            delete (IDisposable^)(sr);
   }

   try
   {
      String^ path2 = String::Concat( path, "temp" );
      
      // Ensure that the target does not exist.
      File::Delete( path2 );
      
      // Copy the file.
      File::Copy( path, path2 );
      Console::WriteLine( "{0} was copied to {1}.", path, path2 );
      
      // Delete the newly created file.
      File::Delete( path2 );
      Console::WriteLine( "{0} was successfully deleted.", path2 );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}
using System;
using System.IO;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";
        if (!File.Exists(path))
        {
            // Create a file to write to.
            using (StreamWriter sw = File.CreateText(path))
            {
                sw.WriteLine("Hello");
                sw.WriteLine("And");
                sw.WriteLine("Welcome");
            }
        }

        // Open the file to read from.
        using (StreamReader sr = File.OpenText(path))
        {
            string s;
            while ((s = sr.ReadLine()) != null)
            {
                Console.WriteLine(s);
            }
        }
    }
}
open System.IO

let path = @"c:\temp\MyTest.txt"

if File.Exists path |> not then
    // Create a file to write to.
    use sw = File.CreateText path
    sw.WriteLine "Hello"
    sw.WriteLine "And"
    sw.WriteLine "Welcome"

// Open the file to read from.
do
    use sr = File.OpenText path
    let mutable s = sr.ReadLine()

    while isNull s |> not do
        printfn $"{s}"
        s <- sr.ReadLine()
Imports System.IO

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        If File.Exists(path) = False Then
            ' Create a file to write to.
            Using sw As StreamWriter = File.CreateText(path)
                sw.WriteLine("Hello")
                sw.WriteLine("And")
                sw.WriteLine("Welcome")
           End Using
        End If

        ' Open the file to read from.
        Using sr As StreamReader = File.OpenText(path)
            Do While sr.Peek() >= 0
                Console.WriteLine(sr.ReadLine())
            Loop
        End Using
    End Sub
End Class

Keterangan

File Gunakan kelas untuk operasi umum seperti menyalin, memindahkan, mengganti nama, membuat, membuka, menghapus, dan menambahkan ke satu file sekaligus. Anda juga dapat menggunakan File kelas untuk mendapatkan dan mengatur atribut file atau DateTime informasi yang terkait dengan pembuatan, akses, dan penulisan file. Jika Anda ingin melakukan operasi pada beberapa file, lihat Directory.GetFiles atau DirectoryInfo.GetFiles.

Banyak metode mengembalikan File jenis I/O lainnya saat Anda membuat atau membuka file. Anda dapat menggunakan jenis lain ini untuk memanipulasi file lebih lanjut. Untuk informasi selengkapnya, lihat anggota tertentu File seperti OpenText, , CreateTextatau Create.

Karena semua File metode statis, mungkin lebih efisien untuk menggunakan File metode daripada metode instans yang sesuai FileInfo jika Anda hanya ingin melakukan satu tindakan. Semua File metode memerlukan jalur ke file yang Anda manipulasi.

Metode statis File kelas melakukan pemeriksaan keamanan pada semua metode. Jika Anda akan menggunakan kembali objek beberapa kali, pertimbangkan untuk menggunakan metode FileInfo instans yang sesuai sebagai gantinya, karena pemeriksaan keamanan tidak akan selalu diperlukan.

Secara default, akses baca/tulis penuh ke file baru diberikan kepada semua pengguna.

Tabel berikut menjelaskan enumerasi yang digunakan untuk menyesuaikan perilaku berbagai File metode.

Enumeration Deskripsi
FileAccess Menentukan akses baca dan tulis ke file.
FileShare Menentukan tingkat akses yang diizinkan untuk file yang sudah digunakan.
FileMode Menentukan apakah konten file yang ada dipertahankan atau ditimpa, dan apakah permintaan untuk membuat file yang ada menyebabkan pengecualian.

Catatan

Dalam anggota yang menerima jalur sebagai string input, jalur tersebut harus terbentuk dengan baik atau pengecualian dinaikkan. Misalnya, jika jalur sepenuhnya memenuhi syarat tetapi dimulai dengan spasi, jalur tidak dipangkas dalam metode kelas. Oleh karena itu, jalurnya salah bentuk dan pengecualian dinaikkan. Demikian pula, jalur atau kombinasi jalur tidak dapat sepenuhnya memenuhi syarat dua kali. Misalnya, "c:\temp c:\windows" juga menimbulkan pengecualian dalam banyak kasus. Pastikan jalur Anda terbentuk dengan baik saat menggunakan metode yang menerima string jalur.

Di anggota yang menerima jalur, jalur dapat merujuk ke file atau hanya direktori. Jalur yang ditentukan juga dapat merujuk ke jalur relatif atau jalur Universal Naming Convention (UNC) untuk server dan nama berbagi. Misalnya, semua berikut ini adalah jalur yang dapat diterima:

  • "c:\\\MyDir\\\MyFile.txt" di C#, atau "c:\MyDir\MyFile.txt" di Visual Basic.

  • "c:\\\MyDir" di C#, atau "c:\MyDir" di Visual Basic.

  • "MyDir\\\MySubdir" di C#, atau "MyDir\MySubDir" di Visual Basic.

  • "\\\\\\\MyServer\\\MyShare" di C#, atau "\\\MyServer\MyShare" di Visual Basic.

Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.

Metode

AppendAllBytes(String, Byte[])

Menyediakan metode statis untuk pembuatan, penyalinan, penghapusan, pemindahan, dan pembukaan satu file, dan membantu dalam pembuatan FileStream objek.

AppendAllBytesAsync(String, Byte[], CancellationToken)

Menyediakan metode statis untuk pembuatan, penyalinan, penghapusan, pemindahan, dan pembukaan satu file, dan membantu dalam pembuatan FileStream objek.

AppendAllLines(String, IEnumerable<String>)

Menambahkan baris ke file, lalu menutup file. Jika file yang ditentukan tidak ada, metode ini membuat file, menulis baris yang ditentukan ke file, lalu menutup file.

AppendAllLines(String, IEnumerable<String>, Encoding)

Menambahkan baris ke file dengan menggunakan pengodean tertentu, lalu menutup file. Jika file yang ditentukan tidak ada, metode ini membuat file, menulis baris yang ditentukan ke file, lalu menutup file.

AppendAllLinesAsync(String, IEnumerable<String>, CancellationToken)

Secara asinkron menambahkan baris ke file, lalu menutup file. Jika file yang ditentukan tidak ada, metode ini membuat file, menulis baris yang ditentukan ke file, lalu menutup file.

AppendAllLinesAsync(String, IEnumerable<String>, Encoding, CancellationToken)

Secara asinkron menambahkan baris ke file dengan menggunakan pengodean tertentu, lalu menutup file. Jika file yang ditentukan tidak ada, metode ini membuat file, menulis baris yang ditentukan ke file, lalu menutup file.

AppendAllText(String, String)

Membuka file, menambahkan string yang ditentukan ke file, lalu menutup file. Jika file tidak ada, metode ini membuat file, menulis string yang ditentukan ke file, lalu menutup file.

AppendAllText(String, String, Encoding)

Menambahkan string yang ditentukan ke file menggunakan pengodean yang ditentukan, membuat file jika belum ada.

AppendAllTextAsync(String, String, CancellationToken)

Secara asinkron membuka file atau membuat file jika belum ada, menambahkan string yang ditentukan ke file, lalu menutup file.

AppendAllTextAsync(String, String, Encoding, CancellationToken)

Secara asinkron membuka file atau membuat file jika belum ada, menambahkan string yang ditentukan ke file menggunakan pengodean yang ditentukan, lalu menutup file.

AppendText(String)

StreamWriter Membuat yang menambahkan teks yang dikodekan UTF-8 ke file yang sudah ada, atau ke file baru jika file yang ditentukan tidak ada.

Copy(String, String)

Menyalin file yang sudah ada ke file baru. Menimpa file dengan nama yang sama tidak diperbolehkan.

Copy(String, String, Boolean)

Menyalin file yang sudah ada ke file baru. Menimpa file dengan nama yang sama diperbolehkan.

Create(String)

Membuat, atau memotong dan menimpa, file di jalur yang ditentukan.

Create(String, Int32)

Membuat, atau memotong dan menimpa, file di jalur yang ditentukan, menentukan ukuran buffer.

Create(String, Int32, FileOptions)

Membuat atau menimpa file di jalur yang ditentukan, menentukan ukuran dan opsi buffer yang menjelaskan cara membuat atau menimpa file.

Create(String, Int32, FileOptions, FileSecurity)

Membuat atau menimpa file di jalur yang ditentukan, menentukan ukuran buffer, opsi yang menjelaskan cara membuat atau menimpa file, dan nilai yang menentukan kontrol akses dan keamanan audit untuk file tersebut.

CreateSymbolicLink(String, String)

Membuat tautan simbolis file yang diidentifikasi oleh path yang menunjuk ke pathToTarget.

CreateText(String)

Membuat atau membuka file untuk menulis teks yang dikodekan UTF-8. Jika file sudah ada, isinya akan diganti.

Decrypt(String)

Mendekripsi file yang dienkripsi oleh akun saat ini menggunakan Encrypt(String) metode .

Delete(String)

Menghapus file yang ditentukan.

Encrypt(String)

Mengenkripsi file sehingga hanya akun yang digunakan untuk mengenkripsi file yang dapat mendekripsinya.

Exists(String)

Menentukan apakah file yang ditentukan ada.

GetAccessControl(String)

FileSecurity Mendapatkan objek yang merangkum entri daftar kontrol akses (ACL) untuk file tertentu.

GetAccessControl(String, AccessControlSections)

FileSecurity Mendapatkan objek yang merangkum jenis entri daftar kontrol akses (ACL) yang ditentukan untuk file tertentu.

GetAttributes(SafeFileHandle)

Mendapatkan yang ditentukan FileAttributes dari file atau direktori yang terkait dengan fileHandle.

GetAttributes(String)

FileAttributes Mendapatkan file di jalur.

GetCreationTime(SafeFileHandle)

Mengembalikan waktu pembuatan file atau direktori yang ditentukan.

GetCreationTime(String)

Mengembalikan tanggal dan waktu pembuatan file atau direktori yang ditentukan.

GetCreationTimeUtc(SafeFileHandle)

Mengembalikan tanggal dan waktu pembuatan, dalam Waktu Universal Terkoordinasi (UTC), dari file atau direktori yang ditentukan.

GetCreationTimeUtc(String)

Mengembalikan tanggal dan waktu pembuatan, dalam Waktu Universal Terkoordinasi (UTC), dari file atau direktori yang ditentukan.

GetLastAccessTime(SafeFileHandle)

Mengembalikan tanggal dan waktu akses terakhir dari file atau direktori yang ditentukan.

GetLastAccessTime(String)

Mengembalikan tanggal dan waktu file atau direktori yang ditentukan terakhir diakses.

GetLastAccessTimeUtc(SafeFileHandle)

Mengembalikan tanggal dan waktu akses terakhir, dalam Waktu Universal Terkoordinasi (UTC), dari file atau direktori yang ditentukan.

GetLastAccessTimeUtc(String)

Mengembalikan tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), bahwa file atau direktori yang ditentukan terakhir diakses.

GetLastWriteTime(SafeFileHandle)

Mengembalikan tanggal dan waktu tulis terakhir dari file atau direktori yang ditentukan.

GetLastWriteTime(String)

Mengembalikan tanggal dan waktu file atau direktori yang ditentukan terakhir ditulis.

GetLastWriteTimeUtc(SafeFileHandle)

Mengembalikan tanggal dan waktu tulis terakhir, dalam Waktu Universal Terkoordinasi (UTC), dari file atau direktori yang ditentukan.

GetLastWriteTimeUtc(String)

Mengembalikan tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), yang terakhir ditulis oleh file atau direktori yang ditentukan.

GetUnixFileMode(SafeFileHandle)

UnixFileMode Mendapatkan dari handel file yang ditentukan.

GetUnixFileMode(String)

UnixFileMode Mendapatkan file di jalur.

Move(String, String)

Memindahkan file tertentu ke lokasi baru, menyediakan opsi untuk menentukan nama file baru.

Move(String, String, Boolean)

Memindahkan file tertentu ke lokasi baru, menyediakan opsi untuk menentukan nama file baru dan mengganti file tujuan jika sudah ada.

Open(String, FileMode)

Membuka pada jalur yang FileStream ditentukan dengan akses baca/tulis tanpa berbagi.

Open(String, FileMode, FileAccess)

FileStream Membuka pada jalur yang ditentukan, dengan mode yang ditentukan dan akses tanpa berbagi.

Open(String, FileMode, FileAccess, FileShare)

FileStream Membuka pada jalur yang ditentukan, memiliki mode yang ditentukan dengan akses baca, tulis, atau baca/tulis dan opsi berbagi yang ditentukan.

Open(String, FileStreamOptions)

Menginisialisasi instans FileStream baru kelas dengan jalur yang ditentukan, mode pembuatan, izin baca/tulis dan berbagi, akses fileStream lain dapat memiliki ke file yang sama, ukuran buffer, opsi file tambahan, dan ukuran alokasi.

OpenHandle(String, FileMode, FileAccess, FileShare, FileOptions, Int64)

Menginisialisasi instans SafeFileHandle baru kelas dengan jalur yang ditentukan, mode pembuatan, izin baca/tulis dan berbagi, akses yang dapat dimiliki SafeFileHandles lainnya ke file yang sama, opsi file tambahan, dan ukuran alokasi.

OpenRead(String)

Membuka file yang ada untuk dibaca.

OpenText(String)

Membuka file teks yang dikodekan UTF-8 yang ada untuk dibaca.

OpenWrite(String)

Membuka file yang ada atau membuat file baru untuk ditulis.

ReadAllBytes(String)

Membuka file biner, membaca konten file ke dalam array byte, lalu menutup file.

ReadAllBytesAsync(String, CancellationToken)

Secara asinkron membuka file biner, membaca konten file ke dalam array byte, lalu menutup file.

ReadAllLines(String)

Membuka file teks, membaca semua baris file, lalu menutup file.

ReadAllLines(String, Encoding)

Membuka file, membaca semua baris file dengan pengodean yang ditentukan, lalu menutup file.

ReadAllLinesAsync(String, CancellationToken)

Secara asinkron membuka file teks, membaca semua baris file, lalu menutup file.

ReadAllLinesAsync(String, Encoding, CancellationToken)

Secara asinkron membuka file teks, membaca semua baris file dengan pengodean yang ditentukan, lalu menutup file.

ReadAllText(String)

Membuka file teks, membaca semua teks dalam file, lalu menutup file.

ReadAllText(String, Encoding)

Membuka file, membaca semua teks dalam file dengan pengodean yang ditentukan, lalu menutup file.

ReadAllTextAsync(String, CancellationToken)

Secara asinkron membuka file teks, membaca semua teks dalam file, lalu menutup file.

ReadAllTextAsync(String, Encoding, CancellationToken)

Secara asinkron membuka file teks, membaca semua teks dalam file dengan pengodean yang ditentukan, lalu menutup file.

ReadLines(String)

Membaca baris file.

ReadLines(String, Encoding)

Baca baris file yang memiliki pengodean tertentu.

ReadLinesAsync(String, CancellationToken)

Secara asinkron membaca baris file.

ReadLinesAsync(String, Encoding, CancellationToken)

Secara asinkron membaca baris file yang memiliki pengodean tertentu.

Replace(String, String, String)

Mengganti konten file tertentu dengan konten file lain, menghapus file asli, dan membuat cadangan file yang diganti.

Replace(String, String, String, Boolean)

Mengganti konten file tertentu dengan konten file lain, menghapus file asli, dan membuat cadangan file yang diganti dan secara opsional mengabaikan kesalahan penggabungan.

ResolveLinkTarget(String, Boolean)

Mendapatkan target tautan file yang ditentukan.

SetAccessControl(String, FileSecurity)

Menerapkan entri daftar kontrol akses (ACL) yang FileSecurity dijelaskan oleh objek ke file yang ditentukan.

SetAttributes(SafeFileHandle, FileAttributes)

Mengatur file atau direktori yang ditentukan FileAttributes yang terkait dengan fileHandle.

SetAttributes(String, FileAttributes)

Mengatur file yang ditentukan FileAttributes pada jalur yang ditentukan.

SetCreationTime(SafeFileHandle, DateTime)

Mengatur tanggal dan waktu file atau direktori dibuat.

SetCreationTime(String, DateTime)

Mengatur tanggal dan waktu file dibuat.

SetCreationTimeUtc(SafeFileHandle, DateTime)

Mengatur tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), bahwa file atau direktori dibuat.

SetCreationTimeUtc(String, DateTime)

Mengatur tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), bahwa file dibuat.

SetLastAccessTime(SafeFileHandle, DateTime)

Mengatur tanggal dan waktu file atau direktori yang ditentukan terakhir diakses.

SetLastAccessTime(String, DateTime)

Menyetel tanggal dan waktu file yang ditentukan terakhir diakses.

SetLastAccessTimeUtc(SafeFileHandle, DateTime)

Mengatur tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), bahwa file atau direktori yang ditentukan terakhir diakses.

SetLastAccessTimeUtc(String, DateTime)

Mengatur tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), bahwa file yang ditentukan terakhir diakses.

SetLastWriteTime(SafeFileHandle, DateTime)

Menyetel tanggal dan waktu file atau direktori yang ditentukan terakhir ditulis.

SetLastWriteTime(String, DateTime)

Menyetel tanggal dan waktu file yang ditentukan terakhir ditulis.

SetLastWriteTimeUtc(SafeFileHandle, DateTime)

Mengatur tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), yang terakhir ditulis oleh file atau direktori yang ditentukan.

SetLastWriteTimeUtc(String, DateTime)

Mengatur tanggal dan waktu, dalam Waktu Universal Terkoordinasi (UTC), tempat file yang ditentukan terakhir ditulis.

SetUnixFileMode(SafeFileHandle, UnixFileMode)

Mengatur handel file yang ditentukan UnixFileMode .

SetUnixFileMode(String, UnixFileMode)

Mengatur file yang ditentukan UnixFileMode pada jalur yang ditentukan.

WriteAllBytes(String, Byte[])

Membuat file baru, menulis array byte yang ditentukan ke file, lalu menutup file. Jika file target sudah ada, file tersebut dipotong dan ditimpa.

WriteAllBytesAsync(String, Byte[], CancellationToken)

Secara asinkron membuat file baru, menulis array byte yang ditentukan ke file, lalu menutup file. Jika file target sudah ada, file tersebut dipotong dan ditimpa.

WriteAllLines(String, IEnumerable<String>)

Membuat file baru, menulis kumpulan string ke file, lalu menutup file.

WriteAllLines(String, IEnumerable<String>, Encoding)

Membuat file baru dengan menggunakan pengodean yang ditentukan, menulis kumpulan string ke file, lalu menutup file.

WriteAllLines(String, String[])

Membuat file baru, menulis array string yang ditentukan ke file, lalu menutup file.

WriteAllLines(String, String[], Encoding)

Membuat file baru, menulis array string yang ditentukan ke file dengan menggunakan pengodean yang ditentukan, lalu menutup file.

WriteAllLinesAsync(String, IEnumerable<String>, CancellationToken)

Secara asinkron membuat file baru, menulis baris yang ditentukan ke file, lalu menutup file.

WriteAllLinesAsync(String, IEnumerable<String>, Encoding, CancellationToken)

Secara asinkron membuat file baru, menulis baris yang ditentukan ke file dengan menggunakan pengodean yang ditentukan, lalu menutup file.

WriteAllText(String, String)

Membuat file baru, menulis string yang ditentukan ke file, lalu menutup file. Jika file target sudah ada, file tersebut dipotong dan ditimpa.

WriteAllText(String, String, Encoding)

Membuat file baru, menulis string yang ditentukan ke file menggunakan pengodean yang ditentukan, lalu menutup file. Jika file target sudah ada, file tersebut dipotong dan ditimpa.

WriteAllTextAsync(String, String, CancellationToken)

Secara asinkron membuat file baru, menulis string yang ditentukan ke file, lalu menutup file. Jika file target sudah ada, file tersebut dipotong dan ditimpa.

WriteAllTextAsync(String, String, Encoding, CancellationToken)

Secara asinkron membuat file baru, menulis string yang ditentukan ke file menggunakan pengodean yang ditentukan, lalu menutup file. Jika file target sudah ada, file tersebut dipotong dan ditimpa.

Berlaku untuk

Lihat juga