C/C++ 在处理文件所在路径下创建子目录
本系列文章由 @yhl_leo 出品,转载请注明出处。
文章链接: http://blog.csdn.net/yhl_leo/article/details/50789265
在一些图像处理或者数据处理时,需要给计算返回的数据指定一个存储路径,如果直接以被处理的文件所在路径下,并以其名命名自动生成一个文件夹,挺方便的,做法如下;
CreateSubfolder.h
/* create subfolder for results saving.
- Email: yahui.cvrs@gmail.com
- Address: Computer Vision and Remote Sensing(CVRS) Lab, Wuhan University.
*/
#ifndef CREATE_SUBFOLDER_H
#define CREATE_SUBFOLDER_H
#pragma once
#include <direct.h>
#include <stdlib.h>
#include <stdio.h>
#include <string>
using namespace std;
class CreateSubfolder
{
public:
CreateSubfolder(){}
~CreateSubfolder(){}
public:
/*
Create a subfolder according to the full-path of the input filepathh
- filepath: full path, input
- subfolder: created folder, output
- filename: name of the input file, output
*/
static void creatSubfolderViaFname(
char* filepath, char* subfolder, char* filename );
};
#endif // CREATE_SUBFOLDER_H
CreateSubfolder.cpp
#include "CreateSubfolder.h"
void CreateSubfolder::creatSubfolderViaFname(
char* filepath, char* subfolder, char* filename )
{
char drive[_MAX_DRIVE];
char dir[_MAX_DIR];
char fname[_MAX_FNAME];
char ext[_MAX_EXT];
_splitpath(filepath, drive, dir, fname, ext);
char* subDir = new char[_MAX_DIR];
sprintf(subDir, "%s\%s\\", dir, fname);
sprintf(subfolder, "%s\%s", drive, subDir);
_mkdir(subfolder);
sprintf(filename, "%s", fname);
delete[] subDir;
}
比如,下面的例子,对一张图片抠出每个单独的图形,并存在该文件夹下:
运行完就是这效果:
(图像处理的代码很简单,就不公布啦~)
本文同步于GitHub:yhlleo/Create-Subfolder
C/C++ 在处理文件所在路径下创建子目录的更多相关文章
- Hello.class所在路径下, 输入命令:java Hello.class,会出现什么结果,为什么?
所在路径下, 输入命令:java Hello.class: 因为DOS没有规定路径,所有么有在默认路径下找到Hello.class文件,导致提示 错误: 找不到或无法加载主类 Hello.class.
- Delphi XE的firemonkey获取当前文件所在路径的方法
Delphi XE的firemonkey获取当前文件所在路径的方法 在之前,我们知道有三种方法: ExtractFilePath(ParamStr(0)) ExtractFilePath(Applic ...
- Delphi获取文件名、文件名不带扩展名、文件名的方法;delphi 获取文件所在路径
取文件名 ExtractFileName(FileName); 取文件扩展名: ExtractFileExt(filename); 取文件名,不带扩展名: 方法一: Function Extrac ...
- System.IO在不存在的路径下创建文件夹和文件的测试
本文测试System.IO命名空间下的类,在不存在的路径下创建文件夹和文件的效果: 首先测试创建文件夹: System.IO.Directory.CreateDirectory(@"C:\A ...
- java 获取class文件所在路径
java 获取class文件所在路径 CreateTime--2017年11月14日15:14:32 Author:Marydon 1.获取class文件所在路径(磁盘路径.绝对路径) // 获取 ...
- Linux查看文件安装路径与文件所在路径
一.查看文件安装路径: 由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址). 这里以Oracle为例.比如说我安装了Oracle,但是不知道文件都安装在哪些地方.放在哪些文件夹里, ...
- vs 中明明包含了头文件所在路径,但是却找不到头文件
vs基本不会出错,那么出错的只能是自己了. 哎,又被自己给蠢死了. 你可能在上面两个地方添加好了include 目录,但是却依然编译失败,失败的提示是找不到头文件所在路径,这是为什么呢. 很简单,因为 ...
- linux编程头文件所在路径的问题
一.问题引入 1.头文件与库 当我们在PC主机linux环境下(如ubuntu),编写linux应用程序,然后利用gcc来编译.在源代码的开始位置会写入头文件,那是因为我们使用了系统提供的库函数,例如 ...
- Python 获取当前文件所在路径
记录几个os获取路径的函数 1. os.path.realpath(__file__):获取文件的绝对路径,包括文件自己的名字 2.os.path.dirname(path):获取path路径的上级路 ...
随机推荐
- Maximal Rectangle [leetcode] 的三种思路
第一种方法是利用DP.时间复杂度是 O(m * m * n) dp(i,j):矩阵中同一行以(i,j)结尾的所有为1的最长子串长度 代码例如以下: int maximalRectangle(vecto ...
- OLR文件丢失的恢复
11.2.0.1的RAC中,rac1和rac2 一.OLR有备份的情况 1.手动将rac1中的olr重命名,模拟丢失 mv rac1.olr rac1.olr.test 2.重新启动crs ./crs ...
- Linux 获取设备树源文件(DTS)里的资源【转】
本文转载自:http://blog.csdn.net/keleming1/article/details/51036000 http://www.cnblogs.com/dyllove98/archi ...
- Amazon宣布将MXNet作为AWS的深度学习框架——貌似性能比tf高啊
Amazon公司的Werner Vogels于上周宣布Amazon深度学习框架将会正式选用MXNet,并且AWS将会通过增加源代码贡献.改进文档以及支持来自其它框架的可视化.开发以及迁移工具,为实现M ...
- 根据日期获取,x岁x月x天
c#: DateTime startDate = new DateTime(); DateTime endDate = new DateTime(); ; ; ; if (endDate.Month& ...
- 禁止button标签提交form表单,变成普通按钮
button有个type属性,属性值可为button.submit.reset button=普通按钮,直接点击不会提交表单submit=提交按钮,点击后会提交表单reset=表单复位 当button ...
- SqlServer数据库基本用法
. 利用T-SQL语句,创建数据库(工资管理数据库),要求如下: 数据库初始大小:3MB:文件大小按兆字节3MB自动增长,增长限制为:15MB: 数据库日志文件初始大小:1MB: 文件大小按百分比5% ...
- jQuery基本选择器模块(二)
选择器模块 1.push方法的兼容性(了解) 问题:IE8不支持aplly方法中的第二个参数是 伪数组 目标:实现 push 方法的浏览器兼容性问题 var push = [].push; try { ...
- JS面向对象(1)——构造函数模式和原型模式
1.构造函数模式 构造函数用来创建特定的类型的对象.如下所示: function Person(name,age,job){ this.name=name; this.job=job; this.ag ...
- (转)RabbitMQ学习之集群部署
http://blog.csdn.net/zhu_tianwei/article/details/40931971 我们先搭建一个普通集群模式,在这个模式基础上再配置镜像模式实现高可用,Rabbit集 ...