linux fstream open,fstream创建文件的问题
生活随笔
收集整理的這篇文章主要介紹了
linux fstream open,fstream创建文件的问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在C語言中,使用FILE*對文件進行操作。當文件不存在時,如果采用w模式打開,文件會自動創建,第二個參數可以為:
如上圖所示,只有當以w,w+,a,a+打開時,文件才會自動創建,而 r,r+則不能。
那么,在C++中又怎么樣呢?
C++中,以fstream文件流的形式對文件進行操作。
上圖只是對各種打開模式進行解釋,并沒有說明在何種情況下,文件會自動創建。經過我的實際編程測試,它的創建文件和C語言類似,當只用in和out方式打開文件時,只有使用out,文件才會自動創建。
即
fstream file(“filename”, ios_base::out)或者file.open(“filename”,
ios_base::out)文件才能自動創建。
而使用fstream file(“filename”)或者file.open(“filename”)則不能創建文件,因此
fstream file(“filename”,
ios_base::out|ios_base::in)或者file.open(“filename”,
ios_base::out|ios_base::in)也不行。
通過上面的說明,可以這么理解:當純粹地讀時,文件必須是存在的;當純粹地寫時,文件可以自動創建;當又讀又寫時,系統假設你先讀,因此,文件也必須是存在的。
總結
以上是生活随笔為你收集整理的linux fstream open,fstream创建文件的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 宇瞻内存条:神秘真相大揭秘
- 下一篇: 内存3200时序调整:稳定性与性能的完美