• 大小: 3KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-17
  • 语言: C/C++
  • 标签: 源码  工具  

资源简介

NULL 博文链接:https://cherishlc.iteye.com/blog/2400974

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
#include “fdstream.hpp“

//using namespace std;
using std::string;

std::shared_ptr eg_read_from_bash_output(const char *cmd) {
::FILE *fp = ::popen(cmd “r“);
if (!fp) {
throw string(“count not open PIPE“);
}
//boost::fdistream fs(fileno(fp)); //注意因为父类istream没有 operator =, 不能够将改类作为返回值。
//如需将fs作为返回值,需使用std::shared_ptr进行封装: http://en.cppreference.com/w/cpp/memory/shared_ptr/shared_ptr
std::shared_ptr pfi(new boost::fdistream(fileno(fp)));
return pfi;
}

int main(){
  auto pfi = eg_read_from_bash_output(“cat hello.txt“);
boost::fdistream& fs = *pfi; 

  string line;
while (std::getline(fs line)) {
std::cout << line << std::endl;
}

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-11-27 03:47  read_from_bash_output\
     文件         157  2017-11-27 03:31  read_from_bash_output\complie_and_run.sh
     文件         880  2017-11-27 03:47  read_from_bash_output\read_from_bash_output.cpp
     文件          47  2017-11-23 07:22  read_from_bash_output\hello.txt
     文件        4292  2017-11-23 07:24  read_from_bash_output\fdstream.hpp

评论

共有 条评论