File.AppendAllLines Metodo

Definizione

Aggiunge righe a un file e quindi chiude il file.

Overload

Nome Descrizione
AppendAllLines(String, IEnumerable<String>)

Aggiunge righe a un file e quindi chiude il file. Se il file specificato non esiste, questo metodo crea un file, scrive le righe specificate nel file e quindi chiude il file.

AppendAllLines(String, IEnumerable<String>, Encoding)

Aggiunge righe a un file utilizzando una codifica specificata e quindi chiude il file. Se il file specificato non esiste, questo metodo crea un file, scrive le righe specificate nel file e quindi chiude il file.

AppendAllLines(String, IEnumerable<String>)

Origine:
File.cs
Origine:
File.cs
Origine:
File.cs
Origine:
File.cs
Origine:
File.cs

Aggiunge righe a un file e quindi chiude il file. Se il file specificato non esiste, questo metodo crea un file, scrive le righe specificate nel file e quindi chiude il file.

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))

Parametri

path
String

File a cui aggiungere le righe. Il file viene creato se non esiste già.

contents
IEnumerable<String>

Righe da aggiungere al file.

Eccezioni

path è una stringa di lunghezza zero, contiene solo spazi vuoti o contiene un altro carattere non valido definito dal GetInvalidPathChars() metodo .

contents O path è null.

path non è valido(ad esempio, la directory non esiste o si trova in un'unità non mappata).

Impossibile trovare il file specificato da path .

Si è verificato un errore di I/O durante l'apertura del file.

path supera la lunghezza massima definita dal sistema.

path è in un formato non valido.

Il chiamante non dispone dell'autorizzazione per scrivere nel file.

path specifica un file di sola lettura.

oppure

Questa operazione non è supportata nella piattaforma corrente.

oppure

path è una directory.

Esempio

L'esempio seguente scrive righe selezionate da un file di dati di esempio in un file e quindi aggiunge altre righe. Per completare correttamente l'esempio, la directory denominata temp nell'unità C deve esistere.

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

Commenti

Il metodo crea il file se non esiste, ma non crea nuove directory. Pertanto, il valore del path parametro deve contenere directory esistenti.

Si applica a

AppendAllLines(String, IEnumerable<String>, Encoding)

Origine:
File.cs
Origine:
File.cs
Origine:
File.cs
Origine:
File.cs
Origine:
File.cs

Aggiunge righe a un file utilizzando una codifica specificata e quindi chiude il file. Se il file specificato non esiste, questo metodo crea un file, scrive le righe specificate nel file e quindi chiude il file.

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)

Parametri

path
String

File a cui aggiungere le righe. Il file viene creato se non esiste già.

contents
IEnumerable<String>

Righe da aggiungere al file.

encoding
Encoding

Codifica dei caratteri da utilizzare.

Eccezioni

path è una stringa di lunghezza zero, contiene solo spazi vuoti o contiene un altro carattere non valido definito dal GetInvalidPathChars() metodo .

path, contentso encoding è null.

path non è valido(ad esempio, la directory non esiste o si trova in un'unità non mappata).

Impossibile trovare il file specificato da path .

Si è verificato un errore di I/O durante l'apertura del file.

path supera la lunghezza massima definita dal sistema.

path è in un formato non valido.

Il chiamante non dispone dell'autorizzazione richiesta.

path specifica un file di sola lettura.

oppure

Questa operazione non è supportata nella piattaforma corrente.

oppure

path è una directory.

oppure

Il chiamante non dispone dell'autorizzazione richiesta.

Commenti

Il metodo crea il file se non esiste, ma non crea nuove directory. Pertanto, il valore del path parametro deve contenere directory esistenti.

È possibile usare questo metodo per creare un file contenente quanto segue:

Si applica a