BinaryWriter Sınıf
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.
İkili tabandaki ilkel türleri bir akışa yazar ve belirli bir kodlamada dize yazmayı destekler.
public ref class BinaryWriter : IDisposable
public ref class BinaryWriter : IAsyncDisposable, IDisposable
public class BinaryWriter : IDisposable
public class BinaryWriter : IAsyncDisposable, IDisposable
[System.Serializable]
public class BinaryWriter : IDisposable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class BinaryWriter : IDisposable
type BinaryWriter = class
interface IDisposable
type BinaryWriter = class
interface IAsyncDisposable
interface IDisposable
[<System.Serializable>]
type BinaryWriter = class
interface IDisposable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type BinaryWriter = class
interface IDisposable
Public Class BinaryWriter
Implements IDisposable
Public Class BinaryWriter
Implements IAsyncDisposable, IDisposable
- Devralma
-
BinaryWriter
- Öznitelikler
- Uygulamalar
Örnekler
Aşağıdaki kod örneği, bir dosyada uygulama ayarlarının nasıl depolanıp alınduğunu gösterir.
using System;
using System.IO;
using System.Text;
class ConsoleApplication
{
const string fileName = "AppSettings.dat";
static void Main()
{
WriteDefaultValues();
DisplayValues();
}
public static void WriteDefaultValues()
{
using (var stream = File.Open(fileName, FileMode.Create))
{
using (var writer = new BinaryWriter(stream, Encoding.UTF8, false))
{
writer.Write(1.250F);
writer.Write(@"c:\Temp");
writer.Write(10);
writer.Write(true);
}
}
}
public static void DisplayValues()
{
float aspectRatio;
string tempDirectory;
int autoSaveTime;
bool showStatusBar;
if (File.Exists(fileName))
{
using (var stream = File.Open(fileName, FileMode.Open))
{
using (var reader = new BinaryReader(stream, Encoding.UTF8, false))
{
aspectRatio = reader.ReadSingle();
tempDirectory = reader.ReadString();
autoSaveTime = reader.ReadInt32();
showStatusBar = reader.ReadBoolean();
}
}
Console.WriteLine("Aspect ratio set to: " + aspectRatio);
Console.WriteLine("Temp directory is: " + tempDirectory);
Console.WriteLine("Auto save time set to: " + autoSaveTime);
Console.WriteLine("Show status bar: " + showStatusBar);
}
}
}
open System.IO
open System.Text
let fileName = "AppSettings.dat"
let writeDefaultValues () =
use stream = File.Open(fileName, FileMode.Create)
use writer = new BinaryWriter(stream, Encoding.UTF8, false)
writer.Write 1.250F
writer.Write @"c:\Temp"
writer.Write 10
writer.Write true
let displayValues () =
if File.Exists fileName then
use stream = File.Open(fileName, FileMode.Open)
use reader = new BinaryReader(stream, Encoding.UTF8, false)
let aspectRatio = reader.ReadSingle()
let tempDirectory = reader.ReadString()
let autoSaveTime = reader.ReadInt32()
let showStatusBar = reader.ReadBoolean()
printfn $"Aspect ratio set to: {aspectRatio}"
printfn $"Temp directory is: {tempDirectory}"
printfn $"Auto save time set to: {autoSaveTime}"
printfn $"Show status bar: {showStatusBar}"
writeDefaultValues ()
displayValues ()
Imports System.IO
Module Module1
Const fileName As String = "AppSettings.dat"
Sub Main()
WriteDefaultValues()
DisplayValues()
End Sub
Sub WriteDefaultValues()
Using writer As BinaryWriter = New BinaryWriter(File.Open(fileName, FileMode.Create))
writer.Write(1.25F)
writer.Write("c:\Temp")
writer.Write(10)
writer.Write(True)
End Using
End Sub
Sub DisplayValues()
Dim aspectRatio As Single
Dim tempDirectory As String
Dim autoSaveTime As Integer
Dim showStatusBar As Boolean
If (File.Exists(fileName)) Then
Using reader As BinaryReader = New BinaryReader(File.Open(fileName, FileMode.Open))
aspectRatio = reader.ReadSingle()
tempDirectory = reader.ReadString()
autoSaveTime = reader.ReadInt32()
showStatusBar = reader.ReadBoolean()
End Using
Console.WriteLine("Aspect ratio set to: " & aspectRatio)
Console.WriteLine("Temp directory is: " & tempDirectory)
Console.WriteLine("Auto save time set to: " & autoSaveTime)
Console.WriteLine("Show status bar: " & showStatusBar)
End If
End Sub
End Module
Açıklamalar
sınıfı, BinaryWriter bir akışa ilkel veri türleri yazmayı basitleştiren yöntemler sağlar. Örneğin yöntemini kullanarak Write akışa bir Boole değeri tek baytlık değer olarak yazabilirsiniz. sınıfı, farklı veri türlerini destekleyen yazma yöntemleri içerir.
Sınıfının yeni bir örneğini BinaryWriter oluşturduğunuzda, yazılacak akışı sağlarsınız ve isteğe bağlı olarak kodlama türünü ve nesneyi yok ettikten BinaryWriter sonra akışın açık bırakılıp bırakılmayacağını belirtirsiniz. Kodlama türü belirtmezseniz UTF-8 kullanılır.
Önemli
Bu tür arabirimini IDisposable uygular. Türünü kullanmayı bitirdiğinizde, doğrudan veya dolaylı olarak atmalısınız. Türü doğrudan atmak için yöntemini bir try
/catch
blokta çağırın.Dispose Bunu dolaylı olarak atmak için (C#'ta) veya Using
(Visual Basic'te) gibi using
bir dil yapısı kullanın. Daha fazla bilgi için arabirim konusunun "IDisposable Uygulayan Bir Nesne Kullanma" bölümüne IDisposable bakın.
Türetilmiş bir sınıf, benzersiz karakter kodlamaları vermek için bu sınıfın yöntemlerini geçersiz kılabilir.
Oluşturucular
BinaryWriter() |
Bir akışa BinaryWriter yazan sınıfının yeni bir örneğini başlatır. |
BinaryWriter(Stream) |
Belirtilen akışı temel alarak ve UTF-8 kodlamasını kullanarak sınıfının yeni bir örneğini BinaryWriter başlatır. |
BinaryWriter(Stream, Encoding) |
Belirtilen akış ve karakter kodlaması BinaryWriter temelinde sınıfının yeni bir örneğini başlatır. |
BinaryWriter(Stream, Encoding, Boolean) |
Belirtilen akış ve karakter kodlaması BinaryWriter temelinde sınıfının yeni bir örneğini başlatır ve isteğe bağlı olarak akışı açık bırakır. |
Alanlar
Null |
Yedekleme deposu olmayan bir BinaryWriter belirtir. |
OutStream |
Temel alınan akışı tutar. |
Özellikler
BaseStream |
temel alınan akışını BinaryWriteralır. |
Yöntemler
Close() |
Geçerli BinaryWriter ve temel alınan akışı kapatır. |
Dispose() |
BinaryWriter sınıfının geçerli örneği tarafından kullanılan tüm kaynakları serbest bırakır. |
Dispose(Boolean) |
BinaryWriter tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır. |
DisposeAsync() |
Sınıfın geçerli örneği BinaryWriter tarafından kullanılan tüm kaynakları zaman uyumsuz olarak serbest bırakır. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
Flush() |
Geçerli yazıcının tüm arabelleklerini temizler ve arabelleğe alınan verilerin temel alınan cihaza yazılmasına neden olur. |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
Seek(Int32, SeekOrigin) |
Geçerli akış içindeki konumu ayarlar. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Write(Boolean) |
Geçerli akışa 0 ve öğesini temsil eden |
Write(Byte) |
Geçerli akışa imzasız bir bayt yazar ve akış konumunu bir bayt ilerletir. |
Write(Byte[]) |
Temel alınan akışa bir bayt dizisi yazar. |
Write(Byte[], Int32, Int32) |
Geçerli akışa bayt dizisinin bir bölgesini yazar. |
Write(Char) |
Geçerli akışa bir Unicode karakteri yazar ve kullanılan ve akışa yazılan belirli karakterlere uygun |
Write(Char[]) |
Geçerli akışa bir karakter dizisi yazar ve kullanılan ve akışa yazılan belirli karakterlere uygun |
Write(Char[], Int32, Int32) |
Karakter dizisinin bir bölümünü geçerli akışa yazar ve kullanılan ve belki de akışa yazılan belirli karakterlere uygun |
Write(Decimal) |
Geçerli akışa ondalık bir değer yazar ve akış konumunu on altı bayt ilerletir. |
Write(Double) |
Geçerli akışa sekiz baytlık bir kayan nokta değeri yazar ve akış konumunu sekiz bayt ilerletir. |
Write(Half) |
Geçerli akışa iki baytlık bir kayan nokta değeri yazar ve akış konumunu iki bayt ilerletir. |
Write(Int16) |
Geçerli akışa iki baytlık imzalı bir tamsayı yazar ve akış konumunu iki bayt ilerletir. |
Write(Int32) |
Geçerli akışa dört baytlık imzalı bir tamsayı yazar ve akış konumunu dört bayt ilerletir. |
Write(Int64) |
Geçerli akışa sekiz baytlık imzalı bir tamsayı yazar ve akış konumunu sekiz bayt ilerletir. |
Write(ReadOnlySpan<Byte>) |
Geçerli akışa bir bayt aralığı yazar. |
Write(ReadOnlySpan<Char>) |
Geçerli akışa bir karakter aralığı yazar ve kullanılan ve belki de akışa yazılan belirli karakterlere uygun |
Write(SByte) |
Geçerli akışa imzalı bir bayt yazar ve akış konumunu bir bayt ilerletir. |
Write(Single) |
Geçerli akışa dört baytlık bir kayan nokta değeri yazar ve akış konumunu dört bayt ilerletir. |
Write(String) |
geçerli kodlamasında BinaryWriterbu akışa uzunluk ön ekli bir dize yazar ve kullanılan kodlamaya ve akışa yazılan belirli karakterlere uygun olarak akışın geçerli konumunu ilerletir. |
Write(UInt16) |
Geçerli akışa iki baytlık işaretsiz bir tamsayı yazar ve akış konumunu iki bayt ilerletir. |
Write(UInt32) |
Geçerli akışa dört baytlık işaretsiz bir tamsayı yazar ve akış konumunu dört bayt ilerletir. |
Write(UInt64) |
Geçerli akışa sekiz baytlık işaretsiz bir tamsayı yazar ve akış konumunu sekiz bayt ilerletir. |
Write7BitEncodedInt(Int32) |
Sıkıştırılmış biçimde 32 bitlik bir tamsayı yazar. |
Write7BitEncodedInt64(Int64) |
Bir kerede 7 bitlik bir sayı yazar. |
Belirtik Arabirim Kullanımları
IDisposable.Dispose() |
BinaryWriter tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır. |
Uzantı Metotları
ConfigureAwait(IAsyncDisposable, Boolean) |
Zaman uyumsuz bir atılabilir öğeden döndürülen görevlerde awaits işleminin nasıl gerçekleştirildiğini yapılandırılır. |
Şunlara uygulanır
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin