Aracılığıyla paylaş


Dosyaları Okuma ve Yazma

C çalışma zamanı kitaplığı dosya işleme işlevlerini kullandıysanız MFC okuma ve yazma işlemleri tanıdık görünür. Bu makalede doğrudan nesneden okuma ve doğrudan bir CFile nesneye yazma açıklanmaktadır. CArchive sınıfıyla arabelleğe alınan dosya G/Ç de yapabilirsiniz.

Dosyasından okumak ve dosyaya yazmak için

  1. dosyadaki Read verileri okumak ve yazmak için ve Write üye işlevlerini kullanın.

    -veya-

  2. Seek Üye işlevi, dosya içindeki belirli bir uzaklık için de kullanılabilir.

Read bir arabelleğe işaretçi alır ve okunacak bayt sayısını alır ve okunan gerçek bayt sayısını döndürür. Dosya sonuna (EOF) ulaşılması nedeniyle gerekli bayt sayısı okunamadıysa, okunan gerçek bayt sayısı döndürülür. Herhangi bir okuma hatası oluşursa, bir özel durum oluşturulur. Write öğesine benzer Read, ancak yazılan bayt sayısı döndürülmedi. Belirtilen tüm baytların yazılmaması da dahil olmak üzere bir yazma hatası oluşursa, bir özel durum oluşur. Geçerli CFile bir nesneniz varsa, aşağıdaki örnekte gösterildiği gibi nesneden okuyabilir veya bu nesneye yazabilirsiniz:

TCHAR   szBuffer[256]; 
UINT    nActual = 0; 
CFile   myFile;

if ( myFile.Open( _T("c:\\test\\myfile.dat"), CFile::modeCreate |   
   CFile::modeReadWrite ) )
{
   myFile.Write( szBuffer, sizeof( szBuffer ) ); 
   myFile.Flush();
   myFile.Seek( 0, CFile::begin );
   nActual = myFile.Read( szBuffer, sizeof( szBuffer ) ); 
}

Dekont

Normalde bir try/catch özel durum işleme bloğu içinde giriş/çıkış işlemleri gerçekleştirmeniz gerekir. Daha fazla bilgi için bkz. Özel Durum İşleme (MFC).

Ayrıca bkz.

Dosyalar