File.OpenWrite(String) 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.
Var olan bir dosyayı açar veya yazmak için yeni bir dosya oluşturur.
public:
static System::IO::FileStream ^ OpenWrite(System::String ^ path);
public static System.IO.FileStream OpenWrite (string path);
static member OpenWrite : string -> System.IO.FileStream
Public Shared Function OpenWrite (path As String) As FileStream
Parametreler
- path
- String
Yazılması için açılacak dosya.
Döndürülenler
Erişimi olan belirtilen yolda Write paylaşılmayan FileStream bir nesne.
Özel durumlar
Çağıranın gerekli izni yok.
-veya-
path
salt okunur bir dosya veya dizin belirtti.
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. yöntemini kullanarak GetInvalidPathChars() geçersiz karakterleri sorgulayabilirsiniz.
path
, null
değeridir.
Belirtilen yol, dosya adı veya her ikisi birden sistem tarafından tanımlanan en fazla uzunluğu aşıyor.
Belirtilen yol geçersiz (örneğin, yol eşlenmemiş bir sürücü üzerinde).
path
geçersiz biçimde.
Örnekler
Aşağıdaki örnek, okuma ve yazma için bir dosya açar.
using namespace System;
using namespace System::IO;
using namespace System::Text;
int main()
{
String^ path = "c:\\temp\\MyTest.txt";
// Open the stream and write to it.
{
FileStream^ fs = File::OpenWrite( path );
try
{
array<Byte>^info = (gcnew UTF8Encoding( true ))->
GetBytes( "This is to test the OpenWrite method." );
// Add some information to the file.
fs->Write( info, 0, info->Length );
}
finally
{
if ( fs )
delete (IDisposable^)fs;
}
}
// Open the stream and read it back.
{
FileStream^ fs = File::OpenRead( path );
try
{
array<Byte>^b = gcnew array<Byte>(1024);
UTF8Encoding^ temp = gcnew UTF8Encoding( true );
while ( fs->Read( b, 0, b->Length ) > 0 )
{
Console::WriteLine( temp->GetString( b ) );
}
}
finally
{
if ( fs )
delete(IDisposable^)fs;
}
}
}
using System;
using System.IO;
using System.Text;
class Test
{
public static void Main()
{
string path = @"c:\temp\MyTest.txt";
// Open the stream and write to it.
using (FileStream fs = File.OpenWrite(path))
{
Byte[] info =
new UTF8Encoding(true).GetBytes("This is to test the OpenWrite method.");
// Add some information to the file.
fs.Write(info, 0, info.Length);
}
// Open the stream and read it back.
using (FileStream fs = File.OpenRead(path))
{
byte[] b = new byte[1024];
UTF8Encoding temp = new UTF8Encoding(true);
while (fs.Read(b,0,b.Length) > 0)
{
Console.WriteLine(temp.GetString(b));
}
}
}
}
open System.IO
open System.Text
let path = @"c:\temp\MyTest.txt"
// Open the stream and write to it.
do
use fs = File.OpenWrite path
let info =
UTF8Encoding(true)
.GetBytes "This is to test the OpenWrite method."
// Add some information to the file.
fs.Write(info, 0, info.Length)
// Open the stream and read it back.
do
use fs = File.OpenRead path
let b = Array.zeroCreate 1024
let temp = UTF8Encoding true
while fs.Read(b, 0, b.Length) > 0 do
printfn $"{temp.GetString b}"
Imports System.IO
Imports System.Text
Public Class Test
Public Shared Sub Main()
Dim path As String = "c:\temp\MyTest.txt"
' Open the stream and write to it.
Using fs As FileStream = File.OpenWrite(path)
Dim info As Byte() = _
New UTF8Encoding(True).GetBytes("This is to test the OpenWrite method.")
' Add some information to the file.
fs.Write(info, 0, info.Length)
End Using
'Open the stream and read it back.
Using fs As FileStream = File.OpenRead(path)
Dim b(1023) As Byte
Dim temp As UTF8Encoding = New UTF8Encoding(True)
Do While fs.Read(b, 0, b.Length) > 0
Console.WriteLine(temp.GetString(b))
Loop
End Using
End Sub
End Class
Açıklamalar
Bu yöntem, dosya modu olarak ayarlanmış, erişim olarak ayarlanmış OpenOrCreateve paylaşım modu olarak ayarlanmış NoneWriteoluşturucu aşırı yüklemesiyle eşdeğerdirFileStream(String, FileMode, FileAccess, FileShare).
yöntemi, OpenWrite dosya yolu için zaten bir dosya varsa dosyayı açar veya yoksa yeni bir dosya oluşturur. Varolan bir dosya için, yeni metni var olan metne eklemez. Bunun yerine, mevcut karakterlerin üzerine yeni karakterler yazar. Daha uzun bir dizenin ("Bu, OpenWrite yönteminin testidir" gibi) daha kısa bir dizeyle ("İkinci çalıştırma" gibi) üzerine yazarsanız, dosya dizelerin bir karışımını ("OpenWrite yönteminin ikinci çalıştırma testi") içerir.
path
parametresi göreli veya mutlak yol bilgilerini belirtebilir. Göreli yol bilgisi, geçerli çalışma dizinine göre yorumlanır. Geçerli çalışma dizinini almak için yöntemini kullanın GetCurrentDirectory .
Döndürülen FileStream , okumayı desteklemiyor. Hem okuma hem de yazma amacıyla bir dosya açmak için kullanın Open.
Yaygın G/Ç görevlerinin listesi için bkz. Ortak G/Ç Görevleri.