File.AppendAllLines Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt Zeilen an eine Datei an und schließt dann die Datei.
Überlädt
AppendAllLines(String, IEnumerable<String>) |
Fügt Zeilen an eine Datei an und schließt dann die Datei. Wenn die angegebene Datei nicht vorhanden ist, erstellt diese Methode eine Datei, schreibt die angegebenen Zeilen in die Datei und schließt die Datei dann. |
AppendAllLines(String, IEnumerable<String>, Encoding) |
Fügt Zeilen unter Verwendung einer angegebenen Codierung an eine Datei an und schließt dann die Datei. Wenn die angegebene Datei nicht vorhanden ist, erstellt diese Methode eine Datei, schreibt die angegebenen Zeilen in die Datei und schließt die Datei dann. |
AppendAllLines(String, IEnumerable<String>)
- Quelle:
- File.cs
- Quelle:
- File.cs
- Quelle:
- File.cs
Fügt Zeilen an eine Datei an und schließt dann die Datei. Wenn die angegebene Datei nicht vorhanden ist, erstellt diese Methode eine Datei, schreibt die angegebenen Zeilen in die Datei und schließt die Datei dann.
public:
static void AppendAllLines(System::String ^ path, System::Collections::Generic::IEnumerable<System::String ^> ^ contents);
public static void AppendAllLines (string path, System.Collections.Generic.IEnumerable<string> contents);
static member AppendAllLines : string * seq<string> -> unit
Public Shared Sub AppendAllLines (path As String, contents As IEnumerable(Of String))
Parameter
- path
- String
Die Datei, an die Zeilen angefügt werden sollen. Wenn die Datei nicht bereits vorhanden ist, wird sie erstellt.
- contents
- IEnumerable<String>
Die Zeilen, die an die Datei angefügt werden sollen.
Ausnahmen
path
ist eine leere Zeichenfolge, enthält nur Leerzeichen oder mindestens ein ungültiges Zeichen gemäß der Definition durch die GetInvalidPathChars()-Methode.
Entweder path
oder contents
ist null
.
path
ist ungültig (z. B. ist das Verzeichnis nicht vorhanden oder befindet sich auf einem nicht zugeordneten Laufwerk).
Die durch path
angegebene Datei wurde nicht gefunden.
Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.
path
überschreitet die vom System definierte maximale Länge.
path
weist ein ungültiges Format auf.
Der Aufrufer ist nicht zum Schreiben in die Datei berechtigt.
path
gibt eine schreibgeschützte Datei an.
- oder -
Dieser Vorgang wird von der aktuellen Plattform nicht unterstützt.
- oder -
path
ist ein Verzeichnis.
Beispiele
Im folgenden Beispiel werden ausgewählte Zeilen aus einer Beispieldatendatei in eine Datei geschrieben und dann weitere Zeilen angefügt. Das Verzeichnis mit dem Namen temp
auf Laufwerk C muss vorhanden sein, damit das Beispiel erfolgreich abgeschlossen werden kann.
using System;
using System.IO;
using System.Linq;
class Program
{
static string dataPath = @"c:\temp\timestamps.txt";
static void Main(string[] args)
{
CreateSampleFile();
var JulyWeekends = from line in File.ReadLines(dataPath)
where (line.StartsWith("Saturday") ||
line.StartsWith("Sunday")) &
line.Contains("July")
select line;
File.WriteAllLines(@"C:\temp\selectedDays.txt", JulyWeekends);
var MarchMondays = from line in File.ReadLines(dataPath)
where line.StartsWith("Monday") &&
line.Contains("March")
select line;
File.AppendAllLines(@"C:\temp\selectedDays.txt", MarchMondays);
}
static void CreateSampleFile()
{
DateTime TimeStamp = new DateTime(1700, 1, 1);
using (StreamWriter sw = new StreamWriter(dataPath))
{
for (int i = 0; i < 500; i++)
{
DateTime TS1 = TimeStamp.AddYears(i);
DateTime TS2 = TS1.AddMonths(i);
DateTime TS3 = TS2.AddDays(i);
sw.WriteLine(TS3.ToLongDateString());
}
}
}
}
open System
open System.IO
let dataPath = @"c:\temp\timestamps.txt"
let createSampleFile () =
let timeStamp = DateTime(1700, 1, 1)
use sw = new StreamWriter(dataPath)
for i = 0 to 499 do
let ts1 = timeStamp.AddYears i
let ts2 = ts1.AddMonths i
let ts3 = ts2.AddDays i
ts3.ToLongDateString() |> sw.WriteLine
createSampleFile ()
let julyWeekends =
File.ReadLines dataPath
|> Seq.filter (fun line ->
(line.StartsWith "Saturday"
|| line.StartsWith "Sunday")
&& line.Contains "July")
File.WriteAllLines(@"C:\temp\selectedDays.txt", julyWeekends)
let marchMondays =
File.ReadLines dataPath
|> Seq.filter (fun line -> line.StartsWith "Monday" && line.Contains "March")
File.AppendAllLines(@"C:\temp\selectedDays.txt", marchMondays)
Imports System.IO
Imports System.Linq
Class Program
Shared dataPath As String = "c:\temp\timestamps.txt"
Public Shared Sub Main(ByVal args As String())
CreateSampleFile()
Dim JulyWeekends = From line In File.ReadLines(dataPath) _
Where (line.StartsWith("Saturday") OrElse _
line.StartsWith("Sunday")) And line.Contains("July") _
Select line
File.WriteAllLines("C:\temp\selectedDays.txt", JulyWeekends)
Dim MarchMondays = From line In File.ReadLines(dataPath) _
Where line.StartsWith("Monday") AndAlso line.Contains("March") _
Select line
File.AppendAllLines("C:\temp\selectedDays.txt", MarchMondays)
End Sub
Private Shared Sub CreateSampleFile()
Dim TimeStamp As New DateTime(1700, 1, 1)
Using sw As New StreamWriter(dataPath)
For i As Integer = 0 To 499
Dim TS1 As DateTime = TimeStamp.AddYears(i)
Dim TS2 As DateTime = TS1.AddMonths(i)
Dim TS3 As DateTime = TS2.AddDays(i)
sw.WriteLine(TS3.ToLongDateString())
Next
End Using
End Sub
End Class
Hinweise
Die -Methode erstellt die Datei, wenn sie nicht vorhanden ist, aber keine neuen Verzeichnisse. Daher muss der Wert des path
Parameters vorhandene Verzeichnisse enthalten.
Gilt für:
AppendAllLines(String, IEnumerable<String>, Encoding)
- Quelle:
- File.cs
- Quelle:
- File.cs
- Quelle:
- File.cs
Fügt Zeilen unter Verwendung einer angegebenen Codierung an eine Datei an und schließt dann die Datei. Wenn die angegebene Datei nicht vorhanden ist, erstellt diese Methode eine Datei, schreibt die angegebenen Zeilen in die Datei und schließt die Datei dann.
public:
static void AppendAllLines(System::String ^ path, System::Collections::Generic::IEnumerable<System::String ^> ^ contents, System::Text::Encoding ^ encoding);
public static void AppendAllLines (string path, System.Collections.Generic.IEnumerable<string> contents, System.Text.Encoding encoding);
static member AppendAllLines : string * seq<string> * System.Text.Encoding -> unit
Public Shared Sub AppendAllLines (path As String, contents As IEnumerable(Of String), encoding As Encoding)
Parameter
- path
- String
Die Datei, an die Zeilen angefügt werden sollen. Wenn die Datei nicht bereits vorhanden ist, wird sie erstellt.
- contents
- IEnumerable<String>
Die Zeilen, die an die Datei angefügt werden sollen.
- encoding
- Encoding
Die zu verwendende Zeichencodierung.
Ausnahmen
path
ist eine leere Zeichenfolge, enthält nur Leerzeichen oder mindestens ein ungültiges Zeichen gemäß der Definition durch die GetInvalidPathChars()-Methode.
Entweder path
, contents
oder encoding
ist null
.
path
ist ungültig (z. B. ist das Verzeichnis nicht vorhanden oder befindet sich auf einem nicht zugeordneten Laufwerk).
Die durch path
angegebene Datei wurde nicht gefunden.
Beim Öffnen der Datei ist ein E/A-Fehler aufgetreten.
path
überschreitet die vom System definierte maximale Länge.
path
weist ein ungültiges Format auf.
Der Aufrufer verfügt nicht über die erforderliche Berechtigung.
path
gibt eine schreibgeschützte Datei an.
- oder -
Dieser Vorgang wird von der aktuellen Plattform nicht unterstützt.
- oder -
path
ist ein Verzeichnis.
- oder -
Der Aufrufer verfügt nicht über die erforderliche Berechtigung.
Hinweise
Die -Methode erstellt die Datei, wenn sie nicht vorhanden ist, aber keine neuen Verzeichnisse. Daher muss der Wert des path
Parameters vorhandene Verzeichnisse enthalten.
Mit dieser Methode können Sie eine Datei erstellen, die Folgendes enthält:
Die Ergebnisse einer LINQ to Objects Abfrage für die Zeilen einer Datei, wie sie mit der ReadLines -Methode abgerufen werden.
Der Inhalt einer Auflistung, die eine IEnumerable<T> von Zeichenfolgen implementiert.