Útmutató: Olvasás és írás egy újonnan létrehozott adatfájlba
Az System.IO.BinaryWriter osztályokat a System.IO.BinaryReader karaktersztringeken kívül más adatok írására és olvasására is használják. Az alábbi példa bemutatja, hogyan hozhat létre üres fájlstreamet, írhat hozzá adatokat, és hogyan olvashat adatokat belőle.
A példa létrehoz egy Test.data nevű adatfájlt az aktuális könyvtárban, létrehozza a társított BinaryWriter és BinaryReader az objektumokat, és az BinaryWriter objektummal írja a 0 és 10 közötti egész számokat a Test.data fájlba, amely a fájlmutatót a fájl végén hagyja. Az BinaryReader objektum ezután visszaállítja a fájlmutatót a forráshoz, és felolvassa a megadott tartalmat.
Feljegyzés
Ha a Test.data már létezik az aktuális könyvtárban, IOException kivétel jelenik meg. Használja a fájlmódot FileMode.Create , és ne FileMode.CreateNew mindig hozzon létre új fájlt kivétel nélkül.
Példa
using System;
using System.IO;
class MyStream
{
private const string FILE_NAME = "Test.data";
public static void Main()
{
if (File.Exists(FILE_NAME))
{
Console.WriteLine($"{FILE_NAME} already exists!");
return;
}
using (FileStream fs = new FileStream(FILE_NAME, FileMode.CreateNew))
{
using (BinaryWriter w = new BinaryWriter(fs))
{
for (int i = 0; i < 11; i++)
{
w.Write(i);
}
}
}
using (FileStream fs = new FileStream(FILE_NAME, FileMode.Open, FileAccess.Read))
{
using (BinaryReader r = new BinaryReader(fs))
{
for (int i = 0; i < 11; i++)
{
Console.WriteLine(r.ReadInt32());
}
}
}
}
}
// The example creates a file named "Test.data" and writes the integers 0 through 10 to it in binary format.
// It then writes the contents of Test.data to the console with each integer on a separate line.
Imports System.IO
Class MyStream
Private Const FILE_NAME As String = "Test.data"
Public Shared Sub Main()
If File.Exists(FILE_NAME) Then
Console.WriteLine($"{FILE_NAME} already exists!")
Return
End If
Using fs As New FileStream(FILE_NAME, FileMode.CreateNew)
Using w As New BinaryWriter(fs)
For i As Integer = 0 To 10
w.Write(i)
Next
End Using
End Using
Using fs As New FileStream(FILE_NAME, FileMode.Open, FileAccess.Read)
Using r As New BinaryReader(fs)
For i As Integer = 0 To 10
Console.WriteLine(r.ReadInt32())
Next
End Using
End Using
End Sub
End Class
' The example creates a file named "Test.data" and writes the integers 0 through 10 to it in binary format.
' It then writes the contents of Test.data to the console with each integer on a separate line.
Lásd még
- BinaryReader
- BinaryWriter
- FileStream
- FileStream.Seek
- SeekOrigin
- Útmutató: Könyvtárak és fájlok számbavétele
- Útmutató: Naplófájl megnyitása és hozzáfűzése
- Útmutató: Szöveg beolvasása fájlból
- Útmutató: Szöveg írása fájlba
- Útmutató: Karakterek olvasása sztringből
- Útmutató: Karakterek írása sztringbe
- Fájl és stream I/O
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: