C++ 文件和流 技术教程文章

初识C++与Visual Studio(4)——Visual Studio2017的解决方案文件夹介绍及项目生成步骤【图】

目录一、解决方案文件夹介绍 二、Visual Studio项目生成步骤2.1 分析 2.2 编译 2.3 链接 2.4 生成一、解决方案文件夹介绍 Visual Studio2017创建解决方案: 文件–>新建–>项目 假设新建一个项目Project1,解决方案起名Solution1,如图所示。 此时生成的最外层目录为Solution1代表整个解决方案的内容都在这个文件夹内。(项目包含在解决方案内) 在这个Solution1文件夹内包含有Solution1.sln的解决方案配置文件和一个Project1文件...

vs c++ 文件的输入和输出【代码】

1.输出流,判断文件是否成功打开 #include <fstream> using namespace std; void main(){const char* p_filename = "data.txt";ofstream fout;//也可以在bai声明时同时打du开文件 ofstream fout(p_filename);fout.open(p_filename);//只接受const char* 的参zhi数if(!fout){cout<<"file open failed.\n";exit(0);//程序dao退出}fout<<"file open success and now write something into it.";fout.close();//记得关闭文件流zhuan } ...

C++文件管理系统【代码】

用C++简单实现了文件管理系统 1.菜单展示,供用户选择 2.简单打开文件,写入数据操作 3.读取文件内容操作 4.清空文件操作 5.退出管理系统 主函数:实现算法框架 #include<iostream>//标准输入输出流头文件 using namespace std;//标准命名空间 #include"fileManager.h" int main() {int choice = 0;//用于存储用户输入fileManager fm;while(true){fm.show_Menu();cout << "请输入您的选择:" << endl;cin >> choice;switch(choice)...

【C/C++业务】ini配置文件函数解析库【代码】

概述 ini配置文件有三要素parameters,sections和comments 1.parameters 指一条配置,就像key = value这样的。 2.sections sections是parameters的集合,sections必须独占一行并且用[]括起来。 sections没有明显的结束方式,一个sections的开始就是另一个sections的结束。 3.comments 指INI配置文件的注释,以 ; 开头。 示例 ; 注释文字 [port] Portname=COM4 Port=4C/C++解析库对比分析 minini 官网:minini 支持C语言以及C++版本...

C++使用TCP SOCKET发送超大文件(超过2G)【代码】

C++使用TCP SOCKET发送超大文件(超过2G) 前几天有一个网友提出问题,如何使用socket传输超大文件。 之前虽然知道理论上该怎么处理,但并未在实际工作中使用过,毕竟现成的工具实在是太多了,没有自己开发的必要。但是想着既然给他回复了一些文字,何不写个demo让他看,不是更加直观吗?说干就干。 首先是服务端的开发。 1.首先要让客户端知道我们要发送的文件是多大,这就要在服务建立连接的时候,先将文件大小通过socket发送给客...

C/C++头文件以及避免头文件包含造成的重定义方法【代码】

C 头文件头文件是扩展名为 .h 的文件,包含了 C 函数声明和宏定义,被多个源文件中引用共享。有两种类型的头文件:程序员编写的头文件和编译器自带的头文件。 在程序中要使用头文件,需要使用 C 预处理指令 #include 来引用它。前面我们已经看过 stdio.h 头文件,它是编译器自带的头文件。 引用头文件相当于复制头文件的内容,但是我们不会直接在源文件中复制头文件的内容,因为这么做很容易出错,特别在程序是由多个源文件组成的时...

解决vscode可以编译通过c++项目,但头文件有红色波浪线的问题【图】

解决vscode可以编译通过c++项目,但头文件有红色波浪线的问题 一、问题描述 我是在Ubuntu 16.04的环境下,用vscode写代码的,一般不使用vscode自带的编译环境,而是用cmake,在命令行中进行编译执行的,所以就算头文件报错,同样也可以编译通过。 但问题是头文件报错会导致后续的vscode没有代码提示,这是一个程序员无法忍受的。 二、解决方法首先我默认大家都已经安装了c++的插件,没有安装的可以从左边找到Extensions 或 快捷键 ...

C++文件夹深度拷贝问题【代码】

void CopyFiles(const CString &strSrcPath, const CString &strDstPath) {SHFILEOPSTRUCT fops;TCHAR source[MAX_PATH] = { 0 };_tcscpy(source, strSrcPath); // 源文件夹TCHAR dest[MAX_PATH] = { 0 };_tcscpy(dest, strDstPath); // 目标文件夹fops.hwnd = ::GetActiveWindow();fops.wFunc = FO_COPY;fops.pFrom = source;fops.pTo = dest;fops.fFlags = FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR || FOF_SILENT;fops.hName...

UE4 C++ 文件操作【代码】

UE4 C++ 文件操作 文章主要是讲一些关于虚幻4中对于文件的一些操作,因为我还是一名UE4的学徒所以文章有什么错误欢迎留言指正,文章会持续更新。 创建文件夹 源码 /** Creates a directory. */ virtual bool MakeDirectory( const TCHAR* Path, bool Tree=0 )=0;使用 //CurrentDirectory 新文件夹的目录 //NewFolderName 新文件夹名 FString NewFolderPath = FPaths::Combine(CurrentDirectory, NewFolderName);bool bResult = IFi...

UE4 C++(18):配置文件【代码】【图】

12/06/2020文章目录 配置文件配置变量名的路径配置基础格式(键值对) 基础获取配置文件信息(Get)写入内容到配置(Set)LoadConfig/SaveConfig 蓝图的Config属性总结参考资料 配置文件 配置文件通常以(.ini)后缀名结尾,UE4引擎自己也有配置文件,当你自己建立完项目也会有配置文件,当编译完之后,Saved文件中也会生出另一份配置文件,通常配置文件存储在Config文件夹中。上述图片描述了UE4引擎和项目中的配置文件(Config) ...

window C++查找指定目录下所有文件【代码】

代码 vector<string> findfile(string path, string mode) {vector<string> files;_finddata_t file;intptr_t HANDLE;string Onepath = path + mode;HANDLE = _findfirst(Onepath.c_str(), &file);if (HANDLE == -1L){cout << "can not match the folder path" << endl;system("pause");}do {//判断是否有子目录 if (file.attrib & _A_SUBDIR){//判断是否为"."当前目录,".."上一层目录if ((strcmp(file.name, ".") != 0) && (str...

c++ 遍历目录下的文件【代码】

#include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <dirent.h> #include <iostream> #include <string.h> #include <stdio.h> #include <fcntl.h> #include <stdlib.h> #include <vector>using namespace std;// 递归列出所有目录及文件 void recursion_scan_dir_file(const char *dir, int depth=1) {DIR *p_dir = NULL;struct dirent *p_entry = NULL;struct stat statbuf;if((p_dir = opendir(dir)) ...

C++基础:多文件编程【图】

本文为《C++ Primer》的读书笔记 目录 多文件编程外部变量声明 `extern`建议最优用法一个 .c 文件需要调用另一个 .c 文件里的变量或者函数,而不能从 .h 文件中调用变量在声明语句中不要给变量赋值引用函数如果不想让其他 .c 文件引用本文件中的变量,加上 `static` 即可多文件编程 函数 当我们调用一个函数时,编译器只需要掌握函数的声明因此,我们将函数声明放在头文件中,而定义放在源文件中inline 以及 constexpr 函数的定义通...

C++函数的分文件编写【代码】

个人博客 http://www.milovetingting.cnC++函数的分文件编写 创建头文件 创建一个后缀为.h的头文件,在头文件中声明函数 //函数的声明 void hello();创建源文件 创建一个后缀为.cpp的源文件,在源文件里定义函数 #include <iostream>using namespace std;//函数的定义 void hello(){cout << "hello,world" << endl; }调用函数 引用刚才定义的头文件,并调用定义的函数 #include "hello.h"int main() {hello();return 0; }

C++实现对象序列化和反序列化(读写二进制文件)操作【图】

相关函数介绍 在我们的C语言中读写二进制文件一般使用的fread、fwrite全局函数,当然也可以使用更底层的read和write函数。在我们的C++中 通过ofstream 和 ifstream 对象 读写文件更加的方便了。对二进制文件的读写 主要使用 ofstream::write,ifstream::read函数。如果对文件读写方向感不强,记不住的 ,记住4个字就行了。读入写出。这个4个字是针对 程序或者说是内存!往内存里面读数据 -> read ,往磁盘里面写数据->write。这样永...

C++ 同时从2个文件读取数据

#include <stdio.h> #include <math.h> #include <string.h> #include <iostream> #include <algorithm> #include<fstream> using namespace std; int a[20][2001]; int b[20][2001]; int main() { int i,j; FILE *stdin1; FILE *stdin2; freopen("1.txt","r",stdin1); //分别打开2个文件 1.txt freopen("2.txt","r",stdin2); //分别打开2个文件 2.txt for (i=1;i<=19;i++) //采用怎么大的数组读取,要保证你 txt 数据是够...

Win10下使用MinGW到指定路径编译C-C++文件【代码】【图】

ps:我用的是最新(2017.07.08)的MinGW,见官方下载地址。官方的这个其实是个安装器,安装速度取决于你的网速,我这边的渣渣网速下载了半个小时,也是醉了。当然你也可以去搜索下安装离线的安装包,比如知乎上的这个问题里就提供很多:MinGW的离线安装包能在哪里下载?MinGW安装很简单,其实就是个解压过程。我安装的7.1.0版本目录如图:直接运行mingw-w64.bat就能跑起来了,当然了可以敲入gcc -v查看一下gcc的版本:简单模式编译文件...

基于C++和OpenCV的文件序列处理框架【图】

搬运自我的CSDN https://blog.csdn.net/u013213111/article/details/108046688 上次分析了一个OpenCV视频处理的小框架,借鉴于此,实现一个对一系列文件进行处理的框架。 还是先来看一下UML类图: 整个框架是由StreamProcessor、FrameProcessor、FileProcessor和FileToolkit这4个类组成的。作为一个简单的例子,这里实现了TumRgbFileProcessor和TumDepthFileProcessor来读取TUM数据集,以及VideoPlayer将读取的图片文件以视频呈现。...

c++ 读取TXT文件,中文乱码处理【代码】

#include <iostream> #include <fstream> #include <string> #include <vector> #include <windows.h>using namespace std;string UTF8ToGB(const char* str) {string result;WCHAR *strSrc;LPSTR szRes;//获得临时变量的大小int i = MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0);strSrc = new WCHAR[i + 1];MultiByteToWideChar(CP_UTF8, 0, str, -1, strSrc, i);//获得临时变量的大小i = WideCharToMultiByte(CP_ACP, 0, ...

c++从源文件到可执行文件的步骤详解(转)【图】

编译与链接有四个过程: (1)预处理 (2)编译 (3)汇编 (4)链接 (1)预处理源文件和头文件被预处理成一个.i文件、(-E表示只进行预处理) g++ -E hello.cpp -o hello.i -E:意味着只执行到预编译,直接输出预编译结果。 预处理过程主要处理那些源文件中的以“#”开始的预编译指令。包括#include,#define, #if,等等。 主要的处理规则如下: (1)将所有的#define删除,并且展开所有的宏。 如#define a b 就是将...