File.WriteAllText Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Tworzy nowy plik, zapisuje zawartość w pliku, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.
Przeciążenia
| WriteAllText(String, ReadOnlySpan<Char>) |
Tworzy nowy plik, zapisuje określony ciąg w pliku, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony. |
| WriteAllText(String, String) |
Tworzy nowy plik, zapisuje określony ciąg w pliku, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony. |
| WriteAllText(String, ReadOnlySpan<Char>, Encoding) |
Tworzy nowy plik, zapisuje określony ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony. |
| WriteAllText(String, String, Encoding) |
Tworzy nowy plik, zapisuje określony ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony. |
WriteAllText(String, ReadOnlySpan<Char>)
Tworzy nowy plik, zapisuje określony ciąg w pliku, a następnie zamyka plik.
Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.
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))
Parametry
- path
- String
Plik do zapisu.
- contents
- ReadOnlySpan<Char>
Znaki do zapisu w pliku.
Wyjątki
path jest null.
path jest pusta.
Określona ścieżka, nazwa pliku lub obie metody przekraczają maksymalną długość zdefiniowaną przez system.
Określona ścieżka jest nieprawidłowa (na przykład znajduje się na niezamapowanym dysku).
Wystąpił błąd we/wy podczas otwierania pliku.
path określony plik, który jest tylko do odczytu.
-lub-
path określony plik, który jest ukryty.
-lub-
path określony katalog.
-lub-
Ta operacja nie jest obsługiwana na bieżącej platformie.
Obiekt wywołujący nie ma wymaganych uprawnień.
path jest w nieprawidłowym formacie.
Uwagi
Ta metoda używa kodowania UTF-8 bez Byte-Order Mark (BOM), więc użycie metody GetPreamble() zwróci pustą tablicę bajtów. Jeśli konieczne jest dołączenie identyfikatora UTF-8, takiego jak znacznik kolejności bajtów, na początku pliku, użyj metody WriteAllText(String, ReadOnlySpan<Char>, Encoding).
Dotyczy
WriteAllText(String, String)
- Źródło:
- File.cs
- Źródło:
- File.cs
- Źródło:
- File.cs
Tworzy nowy plik, zapisuje określony ciąg w pliku, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.
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)
Parametry
- path
- String
Plik do zapisu.
- contents
- String
Ciąg do zapisania w pliku.
Wyjątki
Wersje .NET Framework i .NET Core starsze niż 2.1: path jest ciągiem o zerowej długości, zawiera tylko białe znaki lub zawiera co najmniej jeden nieprawidłowy znak. Zapytanie o nieprawidłowe znaki można wykonać przy użyciu metody GetInvalidPathChars().
path jest null.
Określona ścieżka, nazwa pliku lub obie metody przekraczają maksymalną długość zdefiniowaną przez system.
Określona ścieżka jest nieprawidłowa (na przykład znajduje się na niezamapowanym dysku).
Wystąpił błąd we/wy podczas otwierania pliku.
path określony plik, który jest tylko do odczytu.
-lub-
path określony plik, który jest ukryty.
-lub-
Ta operacja nie jest obsługiwana na bieżącej platformie.
-lub-
path określony katalog.
-lub-
Obiekt wywołujący nie ma wymaganych uprawnień.
path jest w nieprawidłowym formacie.
Obiekt wywołujący nie ma wymaganych uprawnień.
Przykłady
W poniższym przykładzie kodu pokazano użycie metody WriteAllText do pisania tekstu w pliku. W tym przykładzie zostanie utworzony plik, jeśli jeszcze nie istnieje, a do niego zostanie dodany tekst.
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
Uwagi
Ta metoda używa kodowania UTF-8 bez Byte-Order Mark (BOM), więc użycie metody GetPreamble zwróci pustą tablicę bajtów. Jeśli konieczne jest dołączenie identyfikatora UTF-8, takiego jak znacznik kolejności bajtów, na początku pliku, użyj przeciążenia metody WriteAllText(String, String, Encoding) z kodowaniem UTF8.
Biorąc pod uwagę ciąg i ścieżkę pliku, ta metoda otwiera określony plik, zapisuje ciąg w pliku, a następnie zamyka plik.
Dotyczy
WriteAllText(String, ReadOnlySpan<Char>, Encoding)
Tworzy nowy plik, zapisuje określony ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik.
Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.
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)
Parametry
- path
- String
Plik do zapisu.
- contents
- ReadOnlySpan<Char>
Znaki do zapisu w pliku.
- encoding
- Encoding
Kodowanie, które ma być stosowane do ciągu.
Wyjątki
path lub encoding jest null.
path jest pusta.
Określona ścieżka, nazwa pliku lub obie metody przekraczają maksymalną długość zdefiniowaną przez system.
Określona ścieżka jest nieprawidłowa (na przykład znajduje się na niezamapowanym dysku).
Wystąpił błąd we/wy podczas otwierania pliku.
path określony plik, który jest tylko do odczytu.
-lub-
path określony plik, który jest ukryty.
-lub-
path określony katalog.
-lub-
Obiekt wywołujący nie ma wymaganych uprawnień.
-lub-
Ta operacja nie jest obsługiwana na bieżącej platformie.
path jest w nieprawidłowym formacie.
Dotyczy
WriteAllText(String, String, Encoding)
- Źródło:
- File.cs
- Źródło:
- File.cs
- Źródło:
- File.cs
Tworzy nowy plik, zapisuje określony ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik. Jeśli plik docelowy już istnieje, zostanie obcięty i zastąpiony.
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)
Parametry
- path
- String
Plik do zapisu.
- contents
- String
Ciąg do zapisania w pliku.
- encoding
- Encoding
Kodowanie, które ma być stosowane do ciągu.
Wyjątki
Wersje .NET Framework i .NET Core starsze niż 2.1: path jest ciągiem o zerowej długości, zawiera tylko białe znaki lub zawiera co najmniej jeden nieprawidłowy znak. Zapytanie o nieprawidłowe znaki można wykonać przy użyciu metody GetInvalidPathChars().
path jest null.
Określona ścieżka, nazwa pliku lub obie metody przekraczają maksymalną długość zdefiniowaną przez system.
Określona ścieżka jest nieprawidłowa (na przykład znajduje się na niezamapowanym dysku).
Wystąpił błąd we/wy podczas otwierania pliku.
path określony plik, który jest tylko do odczytu.
-lub-
path określony plik, który jest ukryty.
-lub-
Ta operacja nie jest obsługiwana na bieżącej platformie.
-lub-
path określony katalog.
-lub-
Obiekt wywołujący nie ma wymaganych uprawnień.
path jest w nieprawidłowym formacie.
Obiekt wywołujący nie ma wymaganych uprawnień.
Przykłady
W poniższym przykładzie kodu pokazano użycie metody WriteAllText do pisania tekstu w pliku. W tym przykładzie zostanie utworzony plik, jeśli jeszcze nie istnieje, a do niego zostanie dodany tekst.
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
Uwagi
Biorąc pod uwagę ciąg i ścieżkę pliku, ta metoda otwiera określony plik, zapisuje ciąg w pliku przy użyciu określonego kodowania, a następnie zamyka plik. Uchwyt pliku ma gwarancję zamknięcia przez tę metodę, nawet jeśli zgłaszane są wyjątki.