我一直在创建一个C程序,它将从excel中提取一系列数据并将其存储在变量中。我的问题是,我如何在C中创建一个使用变量的目录。昨天我在工作时尝试了几种方法。
#include <stdio.h>
int main(void)
{
//creating directory (works)
system("md E:\sub_directory");
system("mkdir E:\\sub_dir2");
//trying to create directory based off variables (not working yet)
char CustName[50] = "Mars";
char Product[50] = "Chocolate Drops";
int JobNumber = 100;
system("md E:\\",JobNumber,CustName,Product"",JobNumber,CustName,Product);
system("md E:\\%04i %s %s",JobNumber,CustName,Product);
return 0;
}
正如您在上面所看到的,这是我完成的代码。第一部分只是一个参考点,所以我知道基本命令结构。然后我开始调整格式,我目前知道哪些不起作用。
是否有人能够阐明我将如何使用变量名来创建目录? (我目前正在使用Windows 10机器,但程序将在Windows 7机器上运行。我不知道这是否会改变。
答案 0 :(得分:3)
您应该使用sprintf
创建一个包含您要创建的完整路径名的字符串。然后,您应该使用标准库的mkdir
函数来创建目录。
请注意,要创建目录,所有组件路径都必须存在,因此要创建E:\my\path
,您可能需要先创建E:\my
,然后再创建E:\my\path
。
答案 1 :(得分:0)
我看过sprintf
,我想我明白了。我有以下代码:
char CustName[50] = "Mars";
char Product[50] = "Chocolate Drops";
int JobNumber = 100;
char *filepath[100];
sprintf(*filepath, "mkdir D:\\%04i %s %s", JobNumber, CustName, Product);
puts(*filepath);
抱歉,如果这不正确使用,我仍然是编程
的新手