File.WriteAllText Yöntem

Tanım

Yeni bir dosya oluşturur, içeriği dosyaya yazar ve ardından dosyayı kapatır. Hedef dosya zaten varsa kesilir ve üzerine yazılır.

Aşırı Yüklemeler

WriteAllText(String, ReadOnlySpan<Char>)

Yeni bir dosya oluşturur, belirtilen dizeyi dosyaya yazar ve dosyayı kapatır.

Hedef dosya zaten varsa kesilir ve üzerine yazılır.

WriteAllText(String, String)

Yeni bir dosya oluşturur, belirtilen dizeyi dosyaya yazar ve dosyayı kapatır. Hedef dosya zaten varsa kesilir ve üzerine yazılır.

WriteAllText(String, ReadOnlySpan<Char>, Encoding)

Yeni bir dosya oluşturur, belirtilen kodlamayı kullanarak belirtilen dizeyi dosyaya yazar ve ardından dosyayı kapatır.

Hedef dosya zaten varsa kesilir ve üzerine yazılır.

WriteAllText(String, String, Encoding)

Yeni bir dosya oluşturur, belirtilen kodlamayı kullanarak belirtilen dizeyi dosyaya yazar ve ardından dosyayı kapatır. Hedef dosya zaten varsa kesilir ve üzerine yazılır.

WriteAllText(String, ReadOnlySpan<Char>)

Yeni bir dosya oluşturur, belirtilen dizeyi dosyaya yazar ve dosyayı kapatır.

Hedef dosya zaten varsa kesilir ve üzerine yazılır.

public:
 static void WriteAllText(System::String ^ path, ReadOnlySpan<char> contents);
public static void WriteAllText (string path, ReadOnlySpan<char> contents);
static member WriteAllText : string * ReadOnlySpan<char> -> unit
Public Shared Sub WriteAllText (path As String, contents As ReadOnlySpan(Of Char))

Parametreler

path
String

Yazacak dosya.

contents
ReadOnlySpan<Char>

Dosyaya yazacak karakterler.

Özel durumlar

path boş.

Belirtilen yol, dosya adı veya her ikisi de sistem tanımlı uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Dosya açılırken bir G/Ç hatası oluştu.

path salt okunur bir dosya belirtti.

-veya-

path gizli bir dosya belirtti.

-veya-

path bir dizin belirtti.

-veya-

Bu işlem geçerli platformda desteklenmiyor.

Çağıranın gerekli izni yok.

path geçersiz biçimde.

Açıklamalar

Bu yöntem, Byte-Order İşareti (BOM) olmadan UTF-8 kodlaması kullanır, bu nedenle GetPreamble() yöntemi kullanıldığında boş bir bayt dizisi döndürülür. Dosyanın başına bayt sırası işareti gibi bir UTF-8 tanımlayıcısı eklemek gerekiyorsa WriteAllText(String, ReadOnlySpan<Char>, Encoding) yöntemini kullanın.

Şunlara uygulanır

WriteAllText(String, String)

Kaynak:
File.cs
Kaynak:
File.cs
Kaynak:
File.cs

Yeni bir dosya oluşturur, belirtilen dizeyi dosyaya yazar ve dosyayı kapatır. Hedef dosya zaten varsa kesilir ve üzerine yazılır.

public:
 static void WriteAllText(System::String ^ path, System::String ^ contents);
public static void WriteAllText (string path, string contents);
public static void WriteAllText (string path, string? contents);
static member WriteAllText : string * string -> unit
Public Shared Sub WriteAllText (path As String, contents As String)

Parametreler

path
String

Yazacak dosya.

contents
String

Dosyaya yazacak dize.

Özel durumlar

2.1'den eski .NET Framework ve .NET Core sürümleri: path sıfır uzunlukta bir dizedir, yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir. GetInvalidPathChars() yöntemini kullanarak geçersiz karakterleri sorgulayabilirsiniz.

Belirtilen yol, dosya adı veya her ikisi de sistem tanımlı uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Dosya açılırken bir G/Ç hatası oluştu.

path salt okunur bir dosya belirtti.

-veya-

path gizli bir dosya belirtti.

-veya-

Bu işlem geçerli platformda desteklenmiyor.

-veya-

path bir dizin belirtti.

-veya-

Çağıranın gerekli izni yok.

path geçersiz biçimde.

Çağıranın gerekli izni yok.

Örnekler

Aşağıdaki kod örneği, bir dosyaya metin yazmak için WriteAllText yönteminin kullanımını gösterir. Bu örnekte, henüz yoksa bir dosya oluşturulur ve dosyaya metin eklenir.

using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string createText = "Hello and Welcome" + Environment.NewLine;
            File.WriteAllText(path, createText);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText);

        // Open the file to read from.
        string readText = File.ReadAllText(path);
        Console.WriteLine(readText);
    }
}
open System
open System.IO

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

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText =
        "Hello and Welcome" + Environment.NewLine

    File.WriteAllText(path, createText)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText)

// Open the file to read from.
let readText = File.ReadAllText path
printfn $"{readText}"
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText As String = "Hello and Welcome" + Environment.NewLine
            File.WriteAllText(path, createText)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText)

        ' Open the file to read from.
        Dim readText As String = File.ReadAllText(path)
        Console.WriteLine(readText)
    End Sub
End Class

Açıklamalar

Bu yöntem, Byte-Order İşareti (BOM) olmadan UTF-8 kodlaması kullanır, bu nedenle GetPreamble yöntemi kullanıldığında boş bir bayt dizisi döndürülür. Dosyanın başında bayt sırası işareti gibi bir UTF-8 tanımlayıcısının eklenmesi gerekiyorsa, UTF8 kodlama ile WriteAllText(String, String, Encoding) yöntemi aşırı yüklemesini kullanın.

Bir dize ve dosya yolu verüldüğünde, bu yöntem belirtilen dosyayı açar, dizeyi dosyaya yazar ve dosyayı kapatır.

Şunlara uygulanır

WriteAllText(String, ReadOnlySpan<Char>, Encoding)

Yeni bir dosya oluşturur, belirtilen kodlamayı kullanarak belirtilen dizeyi dosyaya yazar ve ardından dosyayı kapatır.

Hedef dosya zaten varsa kesilir ve üzerine yazılır.

public:
 static void WriteAllText(System::String ^ path, ReadOnlySpan<char> contents, System::Text::Encoding ^ encoding);
public static void WriteAllText (string path, ReadOnlySpan<char> contents, System.Text.Encoding encoding);
static member WriteAllText : string * ReadOnlySpan<char> * System.Text.Encoding -> unit
Public Shared Sub WriteAllText (path As String, contents As ReadOnlySpan(Of Char), encoding As Encoding)

Parametreler

path
String

Yazacak dosya.

contents
ReadOnlySpan<Char>

Dosyaya yazacak karakterler.

encoding
Encoding

Dizeye uygulanacak kodlama.

Özel durumlar

path veya encodingnull.

path boş.

Belirtilen yol, dosya adı veya her ikisi de sistem tanımlı uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Dosya açılırken bir G/Ç hatası oluştu.

path salt okunur bir dosya belirtti.

-veya-

path gizli bir dosya belirtti.

-veya-

path bir dizin belirtti.

-veya-

Çağıranın gerekli izni yok.

-veya-

Bu işlem geçerli platformda desteklenmiyor.

path geçersiz biçimde.

Şunlara uygulanır

WriteAllText(String, String, Encoding)

Kaynak:
File.cs
Kaynak:
File.cs
Kaynak:
File.cs

Yeni bir dosya oluşturur, belirtilen kodlamayı kullanarak belirtilen dizeyi dosyaya yazar ve ardından dosyayı kapatır. Hedef dosya zaten varsa kesilir ve üzerine yazılır.

public:
 static void WriteAllText(System::String ^ path, System::String ^ contents, System::Text::Encoding ^ encoding);
public static void WriteAllText (string path, string contents, System.Text.Encoding encoding);
public static void WriteAllText (string path, string? contents, System.Text.Encoding encoding);
static member WriteAllText : string * string * System.Text.Encoding -> unit
Public Shared Sub WriteAllText (path As String, contents As String, encoding As Encoding)

Parametreler

path
String

Yazacak dosya.

contents
String

Dosyaya yazacak dize.

encoding
Encoding

Dizeye uygulanacak kodlama.

Özel durumlar

2.1'den eski .NET Framework ve .NET Core sürümleri: path sıfır uzunlukta bir dizedir, yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir. GetInvalidPathChars() yöntemini kullanarak geçersiz karakterleri sorgulayabilirsiniz.

Belirtilen yol, dosya adı veya her ikisi de sistem tanımlı uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Dosya açılırken bir G/Ç hatası oluştu.

path salt okunur bir dosya belirtti.

-veya-

path gizli bir dosya belirtti.

-veya-

Bu işlem geçerli platformda desteklenmiyor.

-veya-

path bir dizin belirtti.

-veya-

Çağıranın gerekli izni yok.

path geçersiz biçimde.

Çağıranın gerekli izni yok.

Örnekler

Aşağıdaki kod örneği, bir dosyaya metin yazmak için WriteAllText yönteminin kullanımını gösterir. Bu örnekte, henüz yoksa bir dosya oluşturulur ve dosyaya metin eklenir.

using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string createText = "Hello and Welcome" + Environment.NewLine;
            File.WriteAllText(path, createText, Encoding.UTF8);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText, Encoding.UTF8);

        // Open the file to read from.
        string readText = File.ReadAllText(path);
        Console.WriteLine(readText);
    }
}
open System
open System.IO
open System.Text

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

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText =
        "Hello and Welcome" + Environment.NewLine

    File.WriteAllText(path, createText, Encoding.UTF8)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText, Encoding.UTF8)

// Open the file to read from.
let readText = File.ReadAllText path
printfn $"{readText}"
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim sw As StreamWriter

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText As String = "Hello and Welcome" + Environment.NewLine
            File.WriteAllText(path, createText, Encoding.UTF8)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText, Encoding.UTF8)

        ' Open the file to read from.
        Dim readText As String = File.ReadAllText(path)
        Console.WriteLine(readText)
    End Sub
End Class

Açıklamalar

Bir dize ve dosya yolu verüldüğünde, bu yöntem belirtilen dosyayı açar, belirtilen kodlamayı kullanarak dizeyi dosyaya yazar ve sonra dosyayı kapatır. Özel durumlar ortaya çıksa bile dosya tanıtıcısının bu yöntem tarafından kapatılacağı garanti edilir.

Şunlara uygulanır