作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个项目,通过根据 c
中的特定类型创建子文件夹来移动目录文件。我已经在 POSIX
库 dirent.h
的帮助下为主目录中存在的具有不同扩展名的文件创建了目录,但我不知道如何剪切来自主目录的文件并粘贴到其特定的子文件夹中。因此,请指导我如何在 c
中剪切
和粘贴
文件从一个目录到另一个目录。
最佳答案
使用rename(DestinationFilepath, SourceFilepath);
有关更多信息,请查看手册页 http://linux.die.net/man/2/rename
对于两个不同的系统使用 cURL 库: http://en.wikipedia.org/wiki/CURL
C 代码:
#include <unistd.h>
#include <stdio.h>
#include <dirent.h>
#include <string.h>
#include <sys/stat.h>
#include <stdlib.h>
#include <time.h>
#define DESTINATION_FOLDER "/home/second/"
#define SOURCE_FOLDER "/home/first/"
void printdir()
{
DIR *dp;
struct dirent *entry;
struct stat statbuf;
struct tm *tm;
char src_folder[1024];
char dest_folder[1024];
if ((dp = opendir(SOURCE_FOLDER)) == NULL) {
fprintf(stderr,"cannot open directory: %s\n", SOURCE_FOLDER);
return;
}
chdir(SOURCE_FOLDER);
while ((entry = readdir(dp)) != NULL) {
lstat(entry->d_name, &statbuf);
if (!S_ISDIR(statbuf.st_mode)) {
sprintf(src_folder, "%s%s", SOURCE_FOLDER, entry->d_name);
sprintf(dest_folder, "%s%s", DESTINATION_FOLDER, entry->d_name);
printf("%s----------------%s\n", entry->d_name, dest_folder);
rename(src_folder, dest_folder);
}
}
chdir("..");
closedir(dp);
}
int main()
{
while (1) {
printdir();
}
rename("aaa.txt", "/home/second/bbb.txt");
printf("done.\n");
exit(0);
}
关于c - 如何在c中将文件从一个目录移动到另一个目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22856040/
我是一名优秀的程序员,十分优秀!