zoukankan      html  css  js  c++  java
  • fstream文件打开模式

    fstream:
    对于文件的操作很久两年前就开始使用了,但是仅仅为了达到满足自己需求的目的,就是要么是写,要么是读。从来没有对其进行详细的了解。自己也曾
    经想过花一点时间去总结一下,这个东西到底应该怎么用。但是由于:自己的本性懒,所以一直拖到今天,挤出一点时间把这个问题彻底解决一下。还有一点,读写不要同时用否则会出问题。相用的话,需要先seekg或者 seekp;

    默认打开模式是共享的。


    ios::in 为输入打开文件。文件不存在打开失败,文件存在则打开
    ios::out:为输入打开文件。文件不存在则创建在打开,文件存在则清空
    ios::nocreate 文件存在时候,不起作用。当文件不存在时候,强制文件不存在也不创建,这个项应该是针对ios::out;
    ios::noreplace 不覆盖文件,所以打开文件时如果文件存在失败。当文件不存在时,此参数无效。文件存在时,这个选项对于ios::in无效,因为它没有覆盖的意图。但是对于ios::out则是有作用的,当文件存在时打开失败。
    ios::binary文件默认是以文本形式打开,当指定次模式,以二进制打开。
    ios::trunc如果文件不存在,则无效,当文件存在时,首先删除里面的内容。
    ios::app 所有输出附加在文件末尾,读操作与写操作共享指针(位置指针),具有读文件的特性,也就是说在与iso::out组合使用的时候,不清空文件
    ios::ate 初始位置:文件尾




    假想文件操作(假设文件存在):
    文件末尾添加:iso::out|iso::app  或者iso::out|iso::in|ios::ate mark:iso::out|iso::ate会清空里面的数据
    清空文件添加:iso::out
    读取:iso::in
    读写文件:iso::out|iso::in
    读写前清空:iso::out|iso::in|iso::trunc


    假想文件操作(假设文件不存在)
    不可能进行纯粹的读操作
    向文件里写东西:ios::out
    向文件里读写:iso::in|iso::out

  • 相关阅读:
    P1478 陶陶摘苹果(升级版)
    洛谷 P1008 三连击
    1412:二进制分类
    1411:区间内的真素数
    判断素数
    关于小数
    一本通题库1159斐波那契数列
    一本通题库1161转进制
    一本通题1051
    基础算法——数据排序——冒泡
  • 原文地址:https://www.cnblogs.com/qingtian224/p/5581528.html
Copyright © 2011-2022 走看看