程式:
#include #include #include typedef unsigned char byte;
typedef unsigned int dword;
typedef unsigned short word;
#define pri(fmt, ...) printf("["__file__"] <%s>_<%d> " ,__function__,__line__ );\
printf(fmt, ##__va_args__);
int main()
; memset(newname, 0 ,sizeof(newname));
/* 檔案描述符 */
struct dirent *dirp;
dir *dp;
/* 區域性變數儲存檔名稱 */
byte buf[128][64];
/* 區域性變數儲存檔名個數 */
byte num=0;
char *path = "/mnt/hgfs/ubuntu12.04-share/test/2_file/test_dir";
/* 開啟路徑 */
if ((dp = opendir(path))== null)
/* 更換到當前目錄 */
chdir(path);
/* 讀取路徑下的檔案 */
while(dirp = readdir(dp))
int i=0;
while(i != num)
else
perror("rename");
pri(" newname : %s \n", newname);
i++;
} return 0;
}
執行結果:
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file#
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file# gcc -o test test.c
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file#
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file#
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file# ls ./test_dir/
old_1.h264 old_2.h264 old_3.h264 old_4.h264 old_5.h264
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file# ./test
[test.c] _<48> dirp->d_name : old_1.h264
[test.c] _<48> dirp->d_name : old_2.h264
[test.c] _<48> dirp->d_name : old_3.h264
[test.c] _<48> dirp->d_name : old_4.h264
[test.c] _<48> dirp->d_name : old_5.h264
[test.c] _<64> renamed old_1.h264 to new_1.h264 !
[test.c] _<69> newname : new_1.h264
[test.c] _<64> renamed old_2.h264 to new_2.h264 !
[test.c] _<69> newname : new_2.h264
[test.c] _<64> renamed old_3.h264 to new_3.h264 !
[test.c] _<69> newname : new_3.h264
[test.c] _<64> renamed old_4.h264 to new_4.h264 !
[test.c] _<69> newname : new_4.h264
[test.c] _<64> renamed old_5.h264 to new_5.h264 !
[test.c] _<69> newname : new_5.h264
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file# ls ./test_dir/
new_1.h264 new_2.h264 new_3.h264 new_4.h264 new_5.h264
root@ubuntu:/mnt/hgfs/ubuntu12.04-share/test/2_file#
C 檔案重新命名
來自 c 裡面,重新命名檔案時,沒有 rename 這個功能,使用的是fileinfo.moveto的方式,moveto 到原目錄裡乙個新的名字,即實現了重新命名 此方法用於重新命名資料夾內的所有子資料夾的名稱,新子資料夾的名稱可以使用格式字串,如dir,重新命名後的子資料夾為 dir0001 di...
C 重新命名檔案
批量重新命名資料夾下的檔案 借用visualbasic中的方法 首先新增引用 microsoft.visualbasic 然後在所需使用的文件中加上using microsoft.visualbasic.devices 命名空間 主要 computer mycom new computer myco...
使用c 重新命名檔案
在編譯完fpga的版本後,需要把bit檔案和cdc發給其他人進行測試,由於兩個檔案和fpga工程同名,每次都要重新命名,加上今天的日期,便於版本控制。以上就是需求。於是想到要不要寫個指令碼,一鍵執行改名,最先想到的是用bat指令碼,感覺沒學過太麻煩,於是想到用c 剛好最近在看string類相關的,於...