🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ### 把文件内容 读取到字符串 ***** ```c++ #include <string> #include <fstream> #include <sstream> #include <iostream> #include <stdlib.h> using namespace std; //从文件读入到string里 string readFileIntoString(char * filename) { ifstream ifile(filename); //将文件读入到ostringstream对象buf中 ostringstream buf; char ch; while(buf&&ifile.get(ch)) buf.put(ch); //返回与流对象buf关联的字符串 return buf.str(); } int main() { //文件名 char * fn="a.txt"; string str; str=readFileIntoString(fn); cout<<str<<endl; system("pause"); } ``` ### 文件夹迭代 ***** ``` void getFiles( string path, vector<string>& files ) { //文件句柄 long hFile = 0; //文件信息 struct _finddata_t fileinfo; string p; if((hFile = _findfirst(p.assign(path).append("\\*").c_str(),&fileinfo)) != -1) { do { //如果是目录,迭代之 //如果不是,加入列表 if((fileinfo.attrib & _A_SUBDIR)) { if(strcmp(fileinfo.name,".") != 0 && strcmp(fileinfo.name,"..") != 0) getFiles( p.assign(path).append("\\").append(fileinfo.name), files ); } else { files.push_back(p.assign(path).append("\\").append(fileinfo.name) ); } }while(_findnext(hFile, &fileinfo) == 0); _findclose(hFile); } } ``` ### 文件追加 ***** ``` const char *pFileName = "F://b.txt"; PSTR szCndLine = "123"; FILE * pFile; pFile = fopen(pFileName, "a"); if (pFile) { fprintf(pFile, "%s \r\n", szCmdLine); fclose(pFile); } ```