File.WriteAllText Metod

Definition

Skapar en ny fil, skriver innehållet till filen och stänger sedan filen. Om målfilen redan finns trunkeras den och skrivs över.

Överlagringar

Name Description
WriteAllText(String, String)

Skapar en ny fil, skriver den angivna strängen till filen och stänger sedan filen. Om målfilen redan finns trunkeras den och skrivs över.

WriteAllText(String, String, Encoding)

Skapar en ny fil, skriver den angivna strängen till filen med den angivna kodningen och stänger sedan filen. Om målfilen redan finns trunkeras den och skrivs över.

WriteAllText(String, String)

Skapar en ny fil, skriver den angivna strängen till filen och stänger sedan filen. Om målfilen redan finns trunkeras den och skrivs över.

public:
 static void WriteAllText(System::String ^ path, System::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)

Parametrar

path
String

Filen som ska skrivas till.

contents
String

Strängen som ska skrivas till filen.

Undantag

.NET Framework- och .NET Core-versioner som är äldre än 2.1: path är en sträng med noll längd, innehåller endast tomt utrymme eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken med hjälp GetInvalidPathChars() av metoden .

path är null.

Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden.

Den angivna sökvägen är ogiltig (den finns till exempel på en ommappad enhet).

Ett I/O-fel uppstod när filen öppnades.

path har angett en fil som är skrivskyddad.

-eller-

path har angett en fil som är dold.

-eller-

Den här åtgärden stöds inte på den aktuella plattformen.

-eller-

path har angett en katalog.

-eller-

Anroparen har inte den behörighet som krävs.

path är i ett ogiltigt format.

Anroparen har inte den behörighet som krävs.

Exempel

Följande kodexempel visar hur metoden används WriteAllText för att skriva text till en fil. I det här exemplet skapas en fil, om den inte redan finns, och text läggs till i den.

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

Kommentarer

Den här metoden använder UTF-8-kodning utan Byte-Order Mark (BOM), så om du använder GetPreamble metoden returneras en tom bytematris. Om det är nödvändigt att inkludera en UTF-8-identifierare, till exempel ett byteordningsmärke, använder du WriteAllText(String, String, Encoding) metodens överlagring med UTF8 kodning i början av en fil.

Med en sträng och en filsökväg öppnar den här metoden den angivna filen, skriver strängen till filen och stänger sedan filen.

Gäller för

WriteAllText(String, String, Encoding)

Skapar en ny fil, skriver den angivna strängen till filen med den angivna kodningen och stänger sedan filen. Om målfilen redan finns trunkeras den och skrivs över.

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);
static member WriteAllText : string * string * System.Text.Encoding -> unit
Public Shared Sub WriteAllText (path As String, contents As String, encoding As Encoding)

Parametrar

path
String

Filen som ska skrivas till.

contents
String

Strängen som ska skrivas till filen.

encoding
Encoding

Kodningen som ska tillämpas på strängen.

Undantag

.NET Framework- och .NET Core-versioner som är äldre än 2.1: path är en sträng med noll längd, innehåller endast tomt utrymme eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken med hjälp GetInvalidPathChars() av metoden .

path är null.

Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden.

Den angivna sökvägen är ogiltig (den finns till exempel på en ommappad enhet).

Ett I/O-fel uppstod när filen öppnades.

path har angett en fil som är skrivskyddad.

-eller-

path har angett en fil som är dold.

-eller-

Den här åtgärden stöds inte på den aktuella plattformen.

-eller-

path har angett en katalog.

-eller-

Anroparen har inte den behörighet som krävs.

path är i ett ogiltigt format.

Anroparen har inte den behörighet som krävs.

Exempel

Följande kodexempel visar hur metoden används WriteAllText för att skriva text till en fil. I det här exemplet skapas en fil, om den inte redan finns, och text läggs till i den.

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

Kommentarer

Med en sträng och en filsökväg öppnar den här metoden den angivna filen, skriver strängen till filen med den angivna kodningen och stänger sedan filen. Filhandtaget kommer garanterat att stängas med den här metoden, även om undantag aktiveras.

Gäller för