当前位置: 首页 > wzjs >正文

合肥网站建设方案策划湖北金扬建设网站

合肥网站建设方案策划,湖北金扬建设网站,seo实战培训课程,wordpress模板主题实例实战教程C中对文件操作需要包含头文件 #include<fstream> 文件类型分为两类&#xff1a; 1. 文本文件&#xff1a;文件以文本对应的 ASCII 码形式存储在计算机中 2. 二进制文件&#xff1a;文件以文本的二进制形式存储在计算机中&#xff0c;用户一 般不能直接读懂 文件的主…
        
        C++中对文件操作需要包含头文件  #include<fstream>
文件类型分为两类:
        1. 文本文件:文件以文本对应的 ASCII 码形式存储在计算机中
        2. 二进制文件:文件以文本的二进制形式存储在计算机中,用户一 般不能直接读懂
文件的主要操作:
        1. ofstream :写操作
        2. ifstream :读操作
        3. fstream :读写操作
    

文本文件

 文件打开方式

        注意:文件打开方式可以配合使用,利用|操作符

        例如:用二进制方式写文件 ios::binary | ios::out

        写文件

        步骤:

         Setp1:包含头文件 #include<fstream>
         Setp2:创建流对象 ofstream ofs;
         Setp3:打开文件 ofs.open("文件路径", 打开方式);
         Setp4:写数据 ofs << "写入的数据";
         Setp5:关闭文件 ofs.close();

代码示例:

#include<iostream>//1、包含头文件
#include<fstream>using namespace std;//文本文件-写文件
void test01()
{//2、创建流对象ofstream ofs;//3、打开文件,不指定目录的话创建在当前目录下ofs.open("test2.txt", ios::out);//4、写文件ofs << "Name: Trump" << endl;ofs << "Sex: Male" << endl;ofs << "Age: 80" << endl;//5、关闭文件ofs.close();
}int main()
{test01();return 0;
}
        头文件

   #include<fstream>:引入文件流库,该库提供了用于文件输入输出操作的类和函数,是实现文件读写功能的关键。

        test01 函数部分
//文本文件-写文件
void test01()
{//2、创建流对象ofstream ofs;//3、打开文件,不指定目录的话创建在当前目录下ofs.open("test2.txt", ios::out);//4、写文件ofs << "Name: Trump" << endl;ofs << "Sex: Male" << endl;ofs << "Age: 80" << endl;//5、关闭文件ofs.close();
}
        创建流对象
ofstream ofs;

        ofstream 是 fstream 库中用于文件输出操作的类,这里创建了一个 ofstream 类型的对象 ofs,后续将使用它来进行文件写入操作。

        打开文件
ofs.open("test2.txt", ios::out);

        open 是 ofstream 类的成员函数,用于打开指定的文件。第一个参数 "test2.txt" 是要打开的文件名,如果该文件不存在,会自动创建;第二个参数 ios::out 是文件打开模式,表示以输出模式打开文件,即用于写入数据。

        写文件
ofs << "Name: Trump" << endl;
ofs << "Sex: Male" << endl;
ofs << "Age: 80" << endl;

        ofs 是之前创建的 ofstream 类型的对象,代表着一个打开的文件输出流

        这里使用了和 cout 类似的 << 运算符,将文本信息写入到文件中。

        注:输出流操作符  "<<"   :在 C++ 里,<< 不仅是左移操作符,还能作为输出流操作符使用。当和 cout 搭配时,它把数据输出到控制台;当和文件输出流对象(像 ofstream)搭配时,它把数据写入到文件中

        这里的写入文件方式是从头重新写!!
        就算原来文件里有内容也会被清空!!!

       关闭文件
ofs.close();

        close 是 ofstream 类的成员函数用于关闭已打开的文件。关闭文件是一个良好的编程习惯,它可以确保文件中的数据被正确保存,同时释放系统资源

        main函数

int main()
{test01();return 0;
}

        这里调用了 test01 函数,从而执行文件写入操作。最后返回 0 表示程序正常结束。

注意事项:

        错误处理:上面例子中没有对文件打开操作进行错误处理,如果文件无法打开(例如磁盘已满、没有权限等),程序可能会出现未定义行为。可以通过检查 open 函数的返回值或者 ofs 对象的状态来进行错误处理

        文件路径如果没有指定文件的绝对路径,文件将被创建在程序的当前工作目录下

小结

        文件操作必须包含头文件
        写文件可以利用 ofstream,或者 fstream 类
        打开文件时需要指定文件路径以及打开方式
        利用<<可以向文件中写数据
        操作完毕,要关闭文件

读文件

        读文件与写文件步骤类似,但是读取方式更多(此处推荐使用第二种)。

        步骤

        Setp1:包含头文件                                        #include<fstream>
        Setp2:创建流对象                                        ifstream   ifs;
        Setp3:打开文件并判断文件是否打开成功    ifs.open("文件路径 ", 打开方式 );
        Setp4:读数据                                               四种方式读取
        Setp5:关闭文件                                            ifs.close();       
        

         代码示例

#include<iostream>//1、包含头文件
#include<fstream>using namespace std;//文本文件-读文件
void test01()
{//2、创建流对象ifstream ifs;//3、打开文件,并判断是否打开成功ifs.open("test1.txt", ios::in);if (! ifs.is_open()){cout << "Failure" << endl;return;}else{cout << "File Open Success!" << endl;}//4、读文件//    //方法一
//    char buf[1024] = {0}; // 建立一个缓冲区
//
//    while (ifs >> buf)
//    {
//        cout << buf << endl;
//    }//方法二char buf[1024] = {0};while (ifs.getline(buf, sizeof(buf))){cout << buf << endl;}//方法三(不常用)// string buf;// while (getline(ifs, buf))// {//     cout << buf << endl;// }//方法四(不推荐)// char c;// while ((c = ifs.get()) != EOF)  //EOF:文件结束符 end of file// {//     cout << c;// }//5、关闭文件ifs.close();
}int main()
{test01();return 0;
}

        刚刚提到过的点这里不再赘述。

        创建流对象
ifstream ifs;

        ifstream 是 fstream 库中用于文件输入操作的类,这里创建了一个 ifstream 类型的对象 ifs,后续将使用它来进行文件读取操作(不要搞混了,此处是ifstream而不是ofstream)。

        打开文件并检查打开状态
ifs.open("test1.txt", ios::in);if (! ifs.is_open())
{cout << "Failure" << endl;return;
}
else
{cout << "File Open Success!" << endl;
}

        ifs.open("test1.txt", ios::in);open 是 ifstream 类的成员函数,用于打开指定的文件。第一个参数 "test1.txt" 是要打开的文件名;第二个参数 ios::in 是文件打开模式,表示以读取模式打开文件,即用于读取数据。

  ifs.is_open()用于检查文件是否成功打开。如果文件打开失败,is_open() 返回 false,此时输出 "Failure" 并返回,结束函数执行;如果打开成功,输出 "File Open Success!"

        读取文件内容
        方法一
char buf[1024] = {0};
while (ifs >> buf)
{cout << buf << endl;
}

        该方法读到空格就会换行,没有第二种按整行好(除非题目特殊要求,还是掌握了好)

        char buf[1024] = {0};:创建一个大小为 1024 的字符数组 buf 作为缓冲区(初始化为0)。

  ifs >> buf:使用 >> 操作符从文件输入流 ifs 中读取数据直到遇到空白字符(如空格、制表符、换行符等)为止,将读取的数据存储到 buf 中。当读取成功时,ifs >> buf 返回 true,继续循环;当读取失败(如到达文件末尾)时,返回 false,结束循环。

  cout << buf << endl; :将读取到的内容输出到控制台,并换行。

        方法二
char buf[1024] = {0};
while (ifs.getline(buf, sizeof(buf)))
{cout << buf << endl;
}

        ifs.getline(buf, sizeof(buf))getline 是 ifstream 类的成员函数,用于从文件输入流中读取一行数据,直到遇到换行符为止,将读取的数据存储到 buf 中sizeof(buf) 表示缓冲区的大小,防止读取的数据超出缓冲区范围。当读取成功时,返回 true,继续循环;当读取失败(如到达文件末尾)时,返回 false,结束循环。

        这种方法只会读到换行符'\0'之后才会换行,如果是软换行,那么就不会换行。在word中,硬换行是enter键。(下面都一样)

        方法三
string buf;
while (getline(ifs, buf))
{cout << buf << endl;
}

        string buf;:创建一个 string 类型的对象 buf 用于存储读取的一行数据

  getline(ifs, buf)getline 是标准库中的函数(与第二种方法中的getline不同),用于从文件输入流 ifs 中读取一行数据将其存储到 buf 中。当读取成功时,返回 true,继续循环;当读取失败(如到达文件末尾)时,返回 false,结束循环。

        这种方法只会读到换行符'\0'之后才会换行,如果是软换行,那么就不会换行。在word中,硬换行是enter键。

        方法四(不推荐)
char c;
while ((c = ifs.get()) != EOF)
{cout << c;
}

        char c;:创建一个字符变量 c 用于存储每次读取的字符

   ifs.get()get  ifstream 类的成员函数,用于从文件输入流中读取一个字符EOF 是文件结束符,当读取到文件末尾时,ifs.get() 返回 EOF

        这种方法只会读到换行符'\0'之后才会换行,如果是软换行,那么就不会换行。在word中,硬换行是enter键。

   cout << c;:将读取到的字符输出到控制台。

        关闭文件
ifs.close();

        close  ifstream 类的成员函数,用于关闭已打开的文件。关闭文件是一个良好的编程习惯,它可以确保文件资源被正确释放。

http://www.dtcms.com/wzjs/583355.html

相关文章:

  • 照片网站怎么做福建网站建设制作
  • 网站备案表重庆100强企业名单
  • 建设银行河南省分行网站电子商务网站建设文案
  • 好乐买的网站推广方式wordpress自定义字段 筛选
  • 做微商货源网站赚钱吗搜狐快站建设pc网站
  • 农村网站建设茂名网站订制公司
  • 深圳办公室装修多少钱一平方蚌埠seo外包
  • 创业网站模板免费下载如何做好口碑营销
  • 网站建设专业特长新手怎么做美工图
  • 网站建设与管理是什么学校 网站建设工作小组
  • 网站漂浮特效怎么做合肥网站建设王正刚
  • 高端网站建设设计公司哪家好wordpress 赞插件
  • 网站建设2017国内排行建筑设计学什么的
  • 网站开发页面怎么进做当地门户网站多少钱
  • 网站换主机凤岗网站仿做
  • 公司论坛网站建设规划书网站死链查询
  • 网站建设及维护网站开发报告步骤分析
  • 上海网站建设外贸如何做色流量网站
  • 用什么网站做cpa品牌设计公司企业vi设计
  • seo网站地图怎么做绑米wordpress
  • 阿里建站平台官网成都网站运营公司
  • 学校网站开发系统的背景搜外滴滴友链
  • 岳阳企业网站定制开发网站开发与spark
  • 上海自适应网站建设赛尔网络公司好不好
  • 盐城市网站建设为什么用Vue做网站的很少
  • python搭建个人网站郑州哪家做网站便宜
  • 有没有在线制作app网站开发平台wordpress网站主修改密码
  • 长春网站设计长春网络推广做网站在哪个程序做
  • c++实现微博第三方登录 没有公司和网站如何做国内互联网推广
  • 杭州网站设计网站搜索引擎排名规则