Aracılığıyla paylaş


FileStream.Write Yöntem

Tanım

Aşırı Yüklemeler

Write(ReadOnlySpan<Byte>)

Salt okunur bir aralıktan geçerli dosya akışına bir bayt dizisi yazar ve yazılan bayt sayısı kadar bu dosya akışındaki geçerli konumu ilerletir.

Write(Byte[], Int32, Int32)

Dosya akışına bir bayt bloğu yazar.

Write(ReadOnlySpan<Byte>)

Kaynak:
FileStream.cs
Kaynak:
FileStream.cs
Kaynak:
FileStream.cs

Salt okunur bir aralıktan geçerli dosya akışına bir bayt dizisi yazar ve yazılan bayt sayısı kadar bu dosya akışındaki geçerli konumu ilerletir.

public:
 override void Write(ReadOnlySpan<System::Byte> buffer);
public override void Write (ReadOnlySpan<byte> buffer);
override this.Write : ReadOnlySpan<byte> -> unit
Public Overrides Sub Write (buffer As ReadOnlySpan(Of Byte))

Parametreler

buffer
ReadOnlySpan<Byte>

Bellek bölgesi. Bu yöntem, bu bölgenin içeriğini geçerli dosya akışına kopyalar.

Özel durumlar

.NET 8 ve sonraki sürümleri: Temel alınan kanal kapatıldı veya bağlantısı kesildi.

Açıklamalar

CanWrite Geçerli örneğin yazmayı destekleyip desteklemediğini belirlemek için özelliğini kullanın. WriteAsync Geçerli akışa zaman uyumsuz olarak yazmak için yöntemini kullanın.

Yazma işlemi başarılı olursa, dosya akışındaki konum yazılan bayt sayısına göre ilerler. Özel durum oluşursa, dosya akışındaki konum değişmeden kalır.

Şunlara uygulanır

Write(Byte[], Int32, Int32)

Kaynak:
FileStream.cs
Kaynak:
FileStream.cs
Kaynak:
FileStream.cs

Dosya akışına bir bayt bloğu yazar.

public:
 override void Write(cli::array <System::Byte> ^ array, int offset, int count);
public:
 override void Write(cli::array <System::Byte> ^ buffer, int offset, int count);
public override void Write (byte[] array, int offset, int count);
public override void Write (byte[] buffer, int offset, int count);
override this.Write : byte[] * int * int -> unit
override this.Write : byte[] * int * int -> unit
Public Overrides Sub Write (array As Byte(), offset As Integer, count As Integer)
Public Overrides Sub Write (buffer As Byte(), offset As Integer, count As Integer)

Parametreler

arraybuffer
Byte[]

Akışa yazacak verileri içeren arabellek.

offset
Int32

Baytların akışa kopyalanması için sıfır tabanlı bayt uzaklığı array .

count
Int32

Yazacak bayt sayısı üst sınırı.

Özel durumlar

array, null değeridir.

offset ve count içinde geçersiz bir aralık açıklayın array.

offset veya count negatiftir.

G/ç hatası oluştu.

-veya-

Başka bir iş parçacığı, işletim sisteminin dosya tanıtıcısının konumunda beklenmeyen bir değişikliğe neden olmuş olabilir.

-veya-

.NET 8 ve sonraki sürümleri: Temel alınan kanal kapatıldı veya bağlantısı kesildi.

Akış kapatılır.

Geçerli akış örneği yazmayı desteklemiyor.

Örnekler

Bu kod örneği, yöntemi için Lock sağlanan daha büyük bir örneğin parçasıdır.

// Write the original file data.
if ( fileStream->Length == 0 )
{
   tempString = String::Concat( lastRecordText, recordNumber.ToString() );
   fileStream->Write( uniEncoding->GetBytes( tempString ), 0, uniEncoding->GetByteCount( tempString ) );
}
// Write the original file data.
if(fileStream.Length == 0)
{
    tempString =
        lastRecordText + recordNumber.ToString();
    fileStream.Write(uniEncoding.GetBytes(tempString),
        0, uniEncoding.GetByteCount(tempString));
}
// Write the original file data.
if fileStream.Length = 0 then
    let tempString = lastRecordText + string recordNumber
    fileStream.Write(uniEncoding.GetBytes tempString, 0, uniEncoding.GetByteCount tempString)
' Write the original file data.
If aFileStream.Length = 0 Then
    tempString = _
        lastRecordText + recordNumber.ToString()
    aFileStream.Write(uniEncoding.GetBytes(tempString), _
        0, uniEncoding.GetByteCount(tempString))
End If

Açıklamalar

Bu yöntem geçersiz kılar Write.

offset parametresi kopyalamaya array başlanacak bayt uzaklığını (arabellek dizini) verir ve count parametresi de akışa yazılacak bayt sayısını verir. Yazma işlemi başarılı olursa, akışın geçerli konumu yazılan bayt sayısıyla gelişmiştir. Bir özel durum oluşursa, akışın geçerli konumu değişmez.

Not

CanWrite Geçerli örneğin yazmayı destekleyip desteklemediğini belirlemek için özelliğini kullanın. Daha fazla bilgi için, bkz. CanWrite.

Yazma işlemi gerçekleştiren bir iş parçacığını kesmeyin. İş parçacığı engeli kaldırıldıktan sonra uygulama başarıyla çalışıyor gibi görünse de, kesinti uygulamanızın performansını ve güvenilirliğini azaltabilir.

Yaygın dosya ve dizin işlemlerinin listesi için bkz. Ortak G/Ç Görevleri.

Ayrıca bkz.

Şunlara uygulanır