File.AppendAllLines Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Připojí řádky k souboru a pak soubor zavře.
Přetížení
AppendAllLines(String, IEnumerable<String>) |
Připojí řádky k souboru a pak soubor zavře. Pokud zadaný soubor neexistuje, tato metoda vytvoří soubor, zapíše zadané řádky do souboru a pak soubor zavře. |
AppendAllLines(String, IEnumerable<String>, Encoding) |
Připojí řádky k souboru pomocí zadaného kódování a pak soubor zavře. Pokud zadaný soubor neexistuje, tato metoda vytvoří soubor, zapíše zadané řádky do souboru a pak soubor zavře. |
AppendAllLines(String, IEnumerable<String>)
- Zdroj:
- File.cs
- Zdroj:
- File.cs
- Zdroj:
- File.cs
Připojí řádky k souboru a pak soubor zavře. Pokud zadaný soubor neexistuje, tato metoda vytvoří soubor, zapíše zadané řádky do souboru a pak soubor zavře.
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))
Parametry
- path
- String
Soubor, ke který chcete připojit řádky. Soubor se vytvoří, pokud ještě neexistuje.
- contents
- IEnumerable<String>
Řádky, které se mají připojit k souboru.
Výjimky
path
je řetězec nulové délky, obsahuje pouze prázdné znaky nebo obsahuje jeden více neplatných znaků definovaných metodou GetInvalidPathChars() .
Buď path
nebo contents
je null
.
path
je neplatný (například adresář neexistuje nebo je na nemapované jednotce).
Soubor zadaný nástrojem path
nebyl nalezen.
Při otevírání souboru došlo ke vstupně-výstupní chybě.
path
překračuje maximální délku definovanou systémem.
path
je v neplatném formátu.
Volající nemá oprávnění k zápisu do souboru.
path
určuje soubor, který je jen pro čtení.
-nebo-
Tato operace není na aktuální platformě podporovaná.
-nebo-
path
je adresář.
Příklady
Následující příklad zapíše vybrané řádky z ukázkového datového souboru do souboru a pak připojí další řádky. Aby byl příklad úspěšně dokončen, musí existovat adresář s názvem temp
na jednotce C.
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
Poznámky
Metoda vytvoří soubor, pokud neexistuje, ale nevytvoří nové adresáře. Proto hodnota parametru path
musí obsahovat existující adresáře.
Platí pro
AppendAllLines(String, IEnumerable<String>, Encoding)
- Zdroj:
- File.cs
- Zdroj:
- File.cs
- Zdroj:
- File.cs
Připojí řádky k souboru pomocí zadaného kódování a pak soubor zavře. Pokud zadaný soubor neexistuje, tato metoda vytvoří soubor, zapíše zadané řádky do souboru a pak soubor zavře.
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)
Parametry
- path
- String
Soubor, ke který chcete připojit řádky. Soubor se vytvoří, pokud ještě neexistuje.
- contents
- IEnumerable<String>
Řádky, které se mají připojit k souboru.
- encoding
- Encoding
Kódování znaků, které se má použít.
Výjimky
path
je řetězec nulové délky, obsahuje pouze prázdné znaky nebo obsahuje jeden více neplatných znaků definovaných metodou GetInvalidPathChars() .
Buď path
, contents
nebo encoding
je null
.
path
je neplatný (například adresář neexistuje nebo je na nemapované jednotce).
Soubor zadaný nástrojem path
nebyl nalezen.
Při otevírání souboru došlo ke vstupně-výstupní chybě.
path
překračuje maximální délku definovanou systémem.
path
je v neplatném formátu.
Volající nemá požadované oprávnění.
path
určuje soubor, který je jen pro čtení.
-nebo-
Tato operace není na aktuální platformě podporovaná.
-nebo-
path
je adresář.
-nebo-
Volající nemá požadované oprávnění.
Poznámky
Metoda vytvoří soubor, pokud neexistuje, ale nevytvoří nové adresáře. Proto hodnota parametru path
musí obsahovat existující adresáře.
Tuto metodu můžete použít k vytvoření souboru, který obsahuje následující:
Výsledky LINQ to Objects dotazu na řádky souboru získané pomocí ReadLines metody .
Obsah kolekce, která implementuje IEnumerable<T> řetězec.