解决“_mkdir无法识别空格目录“问题

news2024/11/12 14:42:51

    在C++编程里,有时候需要创建一个文件夹,通常使用库函数_mkdir(const char* dirname)来新建一个文件夹,该库函数每次只能创建一个文件夹,不能级联创建。若要级联创建文件,则请用递归方式或者for循环方式调用_mkdir()。

#include <direct.h>  //头文件

//功能:目录创建函数
//备注:每次只能创建一个文件夹,对正斜杠/、反斜杠\都支持,反斜杠需要添加一个转义字符\,即反斜杠路径为\\,正斜杠的路径为/。
int _mkdir(
   const char *dirname 
);

1、_mkdir()里的空格等效替换

    在_mkdir(const char* dirname)函数里,如果目录dirname包含空格,则直接调用_mkdir()函数会失败。这时候,就需要对空格进行转义,比如进行8进制转义,’ ’ 空格的ASCII是32,转换为8进制为40,然后再添加一个转义字符\,流程如下:

' ' == 32 (ASCII) == \40 (八进制)

    按Win+R快捷键 --》输入: calc --》切换到"程序员"模式,如图(1)、图(2)所示,点击[DEC]按钮,然后输入: 32, 可以看到32对应的OCT(即8进制)为40。

图(1) 按Win+R快捷键,输入: calc,然后回车

图(2) 右击三横图标--》选中"程序员",再点击左侧的[DEC],表示10进制

图(3) 输入:32 得到空格的8进制(OCT码)为40

2、创建目录

    MFC使用_mkdri()创建一个新目录,其示例代码如下:

#include <direct.h>

void CreateFolder(CString & strDir)
{	
    strDir.Trim();                     //去掉首尾制表符(\r\n\t等)
	strDir.Replace(_T(" "),_T("\40")); //替换目录里的空格	
	CStringA strPathA;
	strPathA = strDir;
	int ret = _mkdir(strPathA.GetString());
	if (ret == 0)
		AfxMessageBox(_T("创建成功!"));
	else
		AfxMessageBox(_T("创建失败!"));
}

    注意,如果要在系统盘C盘里,创建目录,则需要给当前用户添加读写权限,否则没有读写权限,则无法创建文件夹,如图(4)所示:

图(4) 要有写入权限,才能创建文件夹

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/736757.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

7月6日华为云盘古气象大模型登上《Nature》杂志:相比传统数值预报快10000倍

7月6日&#xff0c;国际顶级学术期刊《自然》&#xff08;Nature&#xff09;杂志正刊发表了华为云盘古大模型研发团队的最新研究成果——《三维神经网络用于精准中期全球天气预报》&#xff08;《Accurate medium-range global weather forecasting with 3D neural networks》…

CrossKD 原理与代码解析

paper&#xff1a;CrossKD: Cross-Head Knowledge Distillation for Dense Object Detection official implementation&#xff1a; https://github.com/jbwang1997/CrossKD 前言 蒸馏可以分为预测蒸馏prediction mimicking和特征蒸馏feature imitation两种&#xff0c;201…

【LeetCode】HOT 100(26)

题单介绍&#xff1a; 精选 100 道力扣&#xff08;LeetCode&#xff09;上最热门的题目&#xff0c;适合初识算法与数据结构的新手和想要在短时间内高效提升的人&#xff0c;熟练掌握这 100 道题&#xff0c;你就已经具备了在代码世界通行的基本能力。 目录 题单介绍&#…

什么是 AOP?对于 Spring IoC 和 AOP 的理解?Spring AOP 和 AspectJ AOP 有什么区别?

什么是 AOP&#xff1f; AOP(Aspect-Oriented Programming)&#xff0c;即 面向切面编程&#xff0c; 它与OOP( ObjectOriented Programming, 面向对象编程) 相辅相成&#xff0c;提供了与OOP 不同的抽象软件结构的视角 在 OOP 中, 我们以类(class)作为我们的基本单元 而 A…

Zynq 多个UDP客户端组网启动问题(Auto negotiation error)PS:附UDP客户端初始化代码

最近正在进行一个Zynq项目&#xff0c;根据设计需求&#xff0c;需要将上位机作为UDP服务器&#xff0c;而FPGA则充当UDP客户端。同时&#xff0c;服务器需要能够接收和控制多个UDP客户端。 开发过程中&#xff0c;我是基于lwip UDP Perf Client 官方模版开发的。我遇到了以下几…

重磅!高通大客户「跳单」,智能座舱SoC赛道进入「混战期」

哪家车企是高通座舱芯片的最大客户&#xff1f;答案不是蔚来、理想、小鹏等智能化布局领先的新势力&#xff0c;而是比亚迪。 高工智能汽车研究院监测数据显示&#xff0c;2022年中国市场&#xff08;不含进出口&#xff09;乘用车智能座舱前装标配高通芯片交付367.45万辆&…

DALL·E2(unCLIP)、Stable Diffusion、IS、FID要点总结

DALLE 1 DALLE 1可以看成是VQ-VAE和文本经过BPE编码得到的embedding AE&#xff08;Auto Encoder&#xff09; encoder decoder结构&#xff0c;AE在生成任务时只会模仿不会创造&#xff0c;所有有了后面的VAE VAE(Variational AutoEncoder) 不再学习固定的bottleneck特征…

2023-07-07-liunx环境,python调用ITK(c++版本)批量生成Drr

文章目录 一、前言二、配置过程2.1.CMake与ITK的配置2.2.改写ITK的生成drr代码2.3.编译代码2.4.python调用cpp 三、总结四、参考博客 一、前言 最近在做配准&#xff0c;需要用ITK来生成数据&#xff0c;windows版本可以通过cmake与visual studio可以跑通生成。但是想要在linu…

纯干货,全文手码:如何利用低/无代码平台建立集团信息化系统

信息化系统是企业管理体系的延伸 对于一家集团企业而言&#xff0c;要实现信息化&#xff0c;首先需要考虑是否已经建立了完备的信息化管理制度。早在上世纪九十年代卡特彼勒引入了6 Sigma&#xff0c;使整个集团公司的运营规范化、系统化。通过多年的实践积累&#xff0c;卡特…

【雕爷学编程】Arduino动手做(157)---MX1508双路电机驱动模块

37款传感器与执行器的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&am…

计算机视觉:通过边缘检测探究卷积的特征提取功能

本文重点 在前面的课程中,我们学习了卷积核的运算,同时我们也学习了卷积核的含义,我们可以将卷积核理解为特征提取器,也就是说一个卷积核就是一个特征提取器,很多人对这种说法不了解,下面我们就通过一个边缘检测的例子来看一下卷积核是如何进行边缘特征的提取的。 什么…

[ICML 2023] Fast inference from transformers via speculative decoding

Contents IntroductionSpeculative DecodingStandardized SamplingSpeculative Sampling AnalysisNumber of Generated TokensCalculating α \alpha αWalltime ImprovementNumber of Arithmetic OperationsChoosing γ \gamma γ ExperimentsReferences Introduction 为了…

springboot+vue膳食营养健康网站零食美食品商城_4d8g9

随着社会的不断进步与发展&#xff0c;人们对生活质量要求逐步提升。如果开发一款膳食营养健康网站&#xff0c;可以让用户在最短的时间里享受到最好的服务&#xff1b;而开发本网站&#xff0c;又能够提高网站整体工作水平&#xff0c;简化工作程序&#xff0c;这对管理员和用…

北京“数据二十条”发布,筑牢数据安全根基,加速释放数据产能

要实现2000亿的目标&#xff0c;基础保障如何做好&#xff1f; 7月5日&#xff0c;中共北京市委、北京市人民政府印发《关于更好发挥数据要素作用进一步加快发展数字经济的实施意见》&#xff08;《实施意见》分为9个部分&#xff0c;共涉及20项具体任务&#xff0c;也被称作“…

TypeScript 中的 enum 枚举类型的使用解读。

前言 在 TypeScript 中&#xff0c;新增了很多具有特性的一些数据类型处理方法&#xff0c;enum 【枚举】就是其中&#xff0c;很具有代表性的一种&#xff0c;所以本章节就来聊聊 在 TypeScript 中如何去运用 enum 【枚举】。 枚举得的概念&#xff1a; 枚举&#xff08;Enum&…

Web前端工程师笔试题(合集)

Web前端开发工程师笔试题篇1 1. 在一个框架的属性面板中&#xff0c;不能设置下面哪一项。( C ) A.源文件 ; B.边框颜色 ; C.边框宽度 D.滚动条 2. CSS样式表根据所在网页的位置&#xff0c;可分为?(B ) A.行内样式表、内嵌样式表、混合样式表 B.行内样式表、内嵌样式表…

MySQL数据库——多表查询练习2

一、练习素材 创建表 --创建部门表dept create table dept ( dept1 int , dept_name varchar(11));--创建员工表emp create table emp ( sid int , name varchar(11), age int, worktime_start date, incoming int, dept2 int); 插入数据 --部门表插入数据 insert into dep…

C++ 栈和队列(stack and queue)语法使用及底层实现原理

本篇文章会对C中的容器stack和queue用法进行详解&#xff0c;也包含对优先队列&#xff08;priority_queue&#xff09;的讲解。同时会模拟实现stack、queue和priority_queue底层。希望本篇文章会对你有所帮助&#xff01; 目录 一、stack 栈 1、1 什么是适配器 1、2 stack 语法…

C++ 线程池实现

思路 创建多个工作线程同时维护一个公共的任务队列, 任务队列非空时通过信号量唤醒阻塞等待的工作线程, 工作线程通过互斥锁互斥的从任务队列中取出任务, 然后执行任务 实现 信号量类 class sem {//封装信号量类 public:sem(int num 0) {if (sem_init(&m_sem, 0, num)…

Kernel-Pwn-FGKASLR保护绕过

FGKASLR FGASLR&#xff08;Function Granular KASLR&#xff09;是KASLR的加强版&#xff0c;增加了更细粒度的地址随机化。因此在开启了FGASLR的内核中&#xff0c;即使泄露了内核的程序基地址也不能调用任意的内核函数。 layout_randomized_image 在fgkaslr.c文件中存在着…