2013-03-27 11 views
18

Sadece mevcut değilse bir metin dosyası oluşturmaya çalışıyorum ve bunu yapmak için fstream elde edemiyorum. fstream bir dosya yaratmıyor

#include <fstream> 
using std::fstream; 

int main(int argc, char *argv[]) { 
    fstream file; 
    file.open("test.txt"); 
    file << "test"; 
    file.close(); 
} 

Ben dosyası oluşturmak için almak için open() işlevinde herhangi bir şey belirtmek gerekir mi? Var olan bir dosyanın orada olmasını bekleyeceğinden, ios::in belirtemediğini okudum, ancak zaten var olmayan bir dosya için başka parametrelerin belirtilmesi gerekiyorsa emin değilim.

+0

sana kullanmak zorunda düşünüyorum: .Open ("metin.txt", fstream :: cinsinden) ; – FacundoGFlores

cevap

14

Böyle yöntemini açmak için fstream :: out eklemek gerekir: fstream bayrakları hakkında

file.open("test.txt",fstream::out); 

Daha fazla bilgi, bu bağlantıyı kontrol Ayrıca, örnek oluşturma ve açılış bir satırda konabilir: http://www.cplusplus.com/reference/fstream/fstream/open/

+1

Teşekkürler, bu hile yaptı. – raphnguyen

+0

Henüz bulunmayan bir dosyada 'file.open (" test.txt ", fstream :: in | fstream :: out | fstream :: binary); – raphnguyen

+4

Varolan olmayan bir dosya üzerinde çalışmak için fstream :: in öğesini isterseniz fstream :: trunc öğesini eklemelisiniz. – haitaka

10

Bazı argümanlar eklemeniz gerekiyor.

fstream file("test.txt", fstream::in | fstream::out | fstream::trunc); 
1

Bu yapacağız:

#include <fstream> 
#include <iostream> 
using std::fstream; 

int main(int argc, char *argv[]) { 
    fstream file; 
    file.open("test.txt",std::ios::out); 
    file << fflush; 
    file.close(); 
} 
İlgili konular