File.ReadAllLines Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir metin dosyasını açar, dosyanın tüm satırlarını bir dize dizisine okur ve sonra dosyayı kapatır.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| ReadAllLines(String) |
Bir metin dosyası açar, dosyanın tüm satırlarını okur ve dosyayı kapatır. |
| ReadAllLines(String, Encoding) |
Bir dosyayı açar, belirtilen kodlamaya sahip dosyanın tüm satırlarını okur ve ardından dosyayı kapatır. |
ReadAllLines(String)
- Kaynak:
- File.cs
- Kaynak:
- File.cs
- Kaynak:
- File.cs
- Kaynak:
- File.cs
- Kaynak:
- File.cs
Bir metin dosyası açar, dosyanın tüm satırlarını okur ve dosyayı kapatır.
public:
static cli::array <System::String ^> ^ ReadAllLines(System::String ^ path);
public static string[] ReadAllLines(string path);
static member ReadAllLines : string -> string[]
Public Shared Function ReadAllLines (path As String) As String()
Parametreler
- path
- String
Okunmak üzere açılacak dosya.
Döndürülenler
Dosyanın tüm satırlarını içeren bir dize dizisi.
Özel durumlar
2.1'den eski .NET Framework ve .NET Core sürümleri: path sıfır uzunlukta bir dizedir, yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir.
GetInvalidPathChars() yöntemini kullanarak geçersiz karakterleri sorgulayabilirsiniz.
path, null'e eşittir.
Belirtilen yol, dosya adı veya her ikisi de sistem tanımlı uzunluk üst sınırını aşıyor.
Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).
Dosya açılırken bir G/Ç hatası oluştu.
Bu işlem geçerli platformda desteklenmiyor.
-veya-
path bir dizin belirtti.
-veya-
Çağıranın gerekli izni yok.
içinde path belirtilen dosya bulunamadı.
path geçersiz biçimde.
Çağıranın gerekli izni yok.
Örnekler
Aşağıdaki kod örneği, bir dosyanın içeriğini görüntülemek için yönteminin kullanımını ReadAllLines gösterir. Bu örnekte, henüz yoksa bir dosya oluşturulur ve dosyaya metin eklenir.
using System;
using System.IO;
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" };
File.WriteAllLines(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.ReadAllLines(path);
foreach (string s in readText)
{
Console.WriteLine(s);
}
}
}
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" ]
File.WriteAllLines(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.ReadAllLines path
for s in readText do
printfn $"{s}"
Imports System.IO
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"}
File.WriteAllLines(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.ReadAllLines(path)
Dim s As String
For Each s In readText
Console.WriteLine(s)
Next
End Sub
End Class
Açıklamalar
Bu yöntem bir dosya açar, dosyanın her satırını okur, ardından her satırı bir dize dizisinin öğesi olarak ekler. Ardından dosyayı kapatır. Satır, ardından satır başı ('\r'), satır beslemesi ('\n') veya satır başı ve hemen ardından satır beslemesi gelen bir karakter dizisi olarak tanımlanır. Sonuçta elde edilen dize, sonlandırıcı satır başı ve/veya satır beslemesini içermez.
Dosya yeni bir satır dizisiyle biterse, diziye ek boş satır eklenmez. Örneğin, içeren "line1\nline2\n" bir dosya içeren bir dosyayla "line1\nline2"aynı iki öğeli diziyi (["line1", "line2"]) üretir.
Bu yöntem, bayt sırası işaretlerinin varlığına bağlı olarak bir dosyanın kodlamasını otomatik olarak algılamaya çalışır. UTF-8 ve UTF-32 kodlama biçimleri (hem büyük endian hem de küçük endian) algılanabilir.
Ayrıca bkz.
- Dosya ve Akış G/Ç'si
- Dosyadan Metin Okuma
- Nasıl yapılır: Dosyaya Metin Yazma
- Nasıl yapılır: Yeni Oluşturulan Veri Dosyasına Okuma ve Yazma
Şunlara uygulanır
ReadAllLines(String, Encoding)
- Kaynak:
- File.cs
- Kaynak:
- File.cs
- Kaynak:
- File.cs
- Kaynak:
- File.cs
- Kaynak:
- File.cs
Bir dosyayı açar, belirtilen kodlamaya sahip dosyanın tüm satırlarını okur ve ardından dosyayı kapatır.
public:
static cli::array <System::String ^> ^ ReadAllLines(System::String ^ path, System::Text::Encoding ^ encoding);
public static string[] ReadAllLines(string path, System.Text.Encoding encoding);
static member ReadAllLines : string * System.Text.Encoding -> string[]
Public Shared Function ReadAllLines (path As String, encoding As Encoding) As String()
Parametreler
- path
- String
Okunmak üzere açılacak dosya.
- encoding
- Encoding
Dosyanın içeriğine uygulanan kodlama.
Döndürülenler
Dosyanın tüm satırlarını içeren bir dize dizisi.
Özel durumlar
2.1'den eski .NET Framework ve .NET Core sürümleri: path sıfır uzunlukta bir dizedir, yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir.
GetInvalidPathChars() yöntemini kullanarak geçersiz karakterleri sorgulayabilirsiniz.
path, null'e eşittir.
Belirtilen yol, dosya adı veya her ikisi de sistem tanımlı uzunluk üst sınırını aşıyor.
Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).
Dosya açılırken bir G/Ç hatası oluştu.
Bu işlem geçerli platformda desteklenmiyor.
-veya-
path bir dizin belirtti.
-veya-
Çağıranın gerekli izni yok.
içinde path belirtilen dosya bulunamadı.
path geçersiz biçimde.
Çağıranın gerekli izni yok.
Örnekler
Aşağıdaki kod örneği, bir dosyanın içeriğini görüntülemek için yönteminin kullanımını ReadAllLines gösterir. Bu örnekte, henüz yoksa bir dosya oluşturulur ve dosyaya metin eklenir.
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" };
File.WriteAllLines(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.ReadAllLines(path, Encoding.UTF8);
foreach (string s in readText)
{
Console.WriteLine(s);
}
}
}
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" ]
File.WriteAllLines(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.ReadAllLines(path, Encoding.UTF8)
for s in readText do
printfn $"{s}"
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"}
File.WriteAllLines(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.ReadAllLines(path, Encoding.UTF8)
Dim s As String
For Each s In readText
Console.WriteLine(s)
Next
End Sub
End Class
Açıklamalar
Bu yöntem bir dosya açar, dosyanın her satırını okur ve her satırı bir dize dizisinin öğesi olarak ekler. Ardından dosyayı kapatır. Satır, ardından satır başı ('\r'), satır beslemesi ('\n') veya satır başı ve hemen ardından satır beslemesi gelen bir karakter dizisi olarak tanımlanır. Sonuçta elde edilen dize, sonlandırıcı satır başı ve/veya satır beslemesini içermez.
Dosya yeni bir satır dizisiyle biterse, diziye ek boş satır eklenmez. Örneğin, içeren "line1\nline2\n" bir dosya içeren bir dosyayla "line1\nline2"aynı iki öğeli diziyi (["line1", "line2"]) üretir.
Bu yöntem, bayt sırası işaretlerinin varlığına bağlı olarak bir dosyanın kodlamasını otomatik olarak algılamaya çalışır. UTF-8 ve UTF-32 kodlama biçimleri (hem büyük endian hem de küçük endian) algılanabilir.
Ayrıca bkz.
- Dosya ve Akış G/Ç'si
- Dosyadan Metin Okuma
- Nasıl yapılır: Dosyaya Metin Yazma
- Nasıl yapılır: Yeni Oluşturulan Veri Dosyasına Okuma ve Yazma