zoukankan      html  css  js  c++  java
  • [C++]读写文件

    C++对文件处理没有shell等脚本语言方便,但也不是无计可施。

    #include <iostream>
    #include <fstream>
    #include <sstream>
    #include <string>
    
    using namespace std;
    
    int main()
    {
    	ifstream in("a.txt");
    	ofstream out("b.txt");
    
    	if(!in || !out)
    	{
    		cerr << "Can not open the files!" << endl;
    		return -1;
    	}
    	string line, tmp;
    	while(getline(in, line))
    	{
    		istringstream iss(line);
    		while(iss >> tmp)
    		{
    			out << tmp << "	";
    		}
    		out << endl;
    	}
    
    	in.close();
    	out.close();
    
    	return 0;
    }
    

    补充:

    文件打开方式选项:
      ios::in        //供读,文件不存在则创建(ifstream默认的打开方式)
      ios::out       //供写,文件不存在则创建,若文件已存在则清空原内容(ofstream默认的打开方式)
      ios::ate       //文件打开时,指针在文件最后。可改变指针的位置,常和in、out联合使用
      ios::app      //供写,文件不存在则创建,若文件已存在则在原文件内容后写入新的内容,指针位置总在最后
      ios::trunc      //在读写前先将文件长度截断为0(默认)
      ios::nocreate    //文件不存在时产生错误,常和in或app联合使用
      ios::noreplace   //文件存在时产生错误,常和out联合使用
      ios::binary     //二进制格式文件  

    随机读写文件:
      seekg(绝对位置)      //绝对移动,    //输入流操作
      seekg(相对位置,参照位置)   //相对操作
      tellg()            //返回当前指针位置
      seekp(绝对位置)      //绝对移动      //输出流操作
      seekp(相对位置,参照位置)  //相对操作   
      tellp()              //返回当前指针位置
      参照位置:
      ios::beg           //相对于文件头
      ios::cur           //相对于当前位置
      ios::end            //相对于文件尾

  • 相关阅读:
    Java方法_数组
    Java语句
    C#死锁示例
    Sqlserver限制用户访问指定数据库
    Stream 和 byte[] 之间的转换
    ContentType
    IIS7多站点ssl配置及http自动跳转到https
    google map api key配置
    remote: Incorrect username or password ( access token ) fatal: Authentication failed for
    IIS 404设置
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3790769.html
Copyright © 2011-2022 走看看