FileStream.Write 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.
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.