当前位置:首页 > 代码相关 > 正文内容

C语言 rename

admin7个月前 (11-26)代码相关265

在<stdio.h>头文件下

以下内容来自:http://www.cplusplus.com/reference/cstdio/rename/?kw=rename

rename

int rename ( const char * oldname, const char * newname );

Rename file

Changes the name of the file or directory specified by oldname to newname.

This is an operation performed directly on a file; No streams are involved in the operation.

If oldname and newname specify different paths and this is supported by the system, the file is moved to the new location.

If newname names an existing file, the function may either fail or override the existing file, depending on the specific system and library implementation.

Proper file access shall be available.

Parameters

  • oldname

    C string containing the name of an existing file to be renamed and/or moved. Its value shall follow the file name specifications of the running environment and can include a path (if supported by the system).

  • newname

    C string containing the new name for the file. Its value shall follow the file name specifications of the running environment and can include a path (if supported by the system).

Return value

If the file is successfully renamed, a zero value is returned. On failure, a nonzero value is returned. On most library implementations, the errno variable is also set to a system-specific error code on failure.

Example

/* rename example */
#include <stdio.h>

int main ()
{
  int result;
  char oldname[] ="oldname.txt";
  char newname[] ="newname.txt";
  result= rename( oldname , newname );
  if ( result == 0 )
    puts ( "File successfully renamed" );
  else
    perror( "Error renaming file" );
  return 0;
}

If the file oldname.txt could be successfully renamed to newname.txt the following message would be written to stdout:

File successfully renamed

Otherwise, a message similar to this will be written to stderr:

Error renaming file: Permission denied

rename

更改文件或路径的名字,由 oldname 改成 newname

这是直接在文件上执行的操作;操作中不涉及任何流。

如果 oldnamenewname 指定不同的路径,并且系统支持的话,则文件将移到新位置。

如果 newname 为已经存在的文件名字,则该函数可能会失败或覆盖现有文件,这取决于特定的系统和库实现。

应提供适当的文件访问。

参数

  • oldname

    包含要重命名和/或移动的现有文件的名称的字符串。它的值应该遵循运行环境的文件名规范,并且可以包括一个路径(如果系统支持的话)。

  • newname

    包含文件新名称的字符串。它的值应该遵循运行环境的文件名规范,并且可以包括一个路径(如果系统支持的话)。

返回值

如果成功重命名文件,则返回零值。如果失败,则返回一个非零值。在大多数库实现中,errno变量也被设置为失败时特定于系统的错误代码。

版权声明:本文由cyhu's essay发布,如需转载请注明出处。

本文链接:https://lovedm.club/?id=105

相关文章

C# Stack堆栈

Stack代表了一个先入后出的对象集合。有以下常用方法:表 3Clear()从 Stack 中移除所有对象。Contains(Object)确定某元素是否在 Stack&...

GDAL使用(一)

先开个坑,关于配置什么的有空再写。这里的代码大多参考官网的教程,可能略有改动。下面的代码有打开数据、读取栅格相关信息、读取栅格数据、判断栅格驱动是否支持Create()和CreateCopy()等功能...

GDAL使用(四)

GDAL使用(四)

接上面,可以使用exe工具实现同样的功能。这个工具详情如下:gdalwarp [--help-general] [--formats]    &nb...

C# 多线程(1)

一、首先看几个词的含义:进程:进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。线程:线程(Thread)是操作系统能够进...

C语言scanf一个容易出错的地方

今天用scanf()写一个数组循环输入,运行时很奇怪,明明只需要输入三个数,但是实际上要多输入一个,瞅了好一会才看到我是这么写的scanf("%d\n",&p[i]);问题...

C、C++、C#交换变量

C、C++、C#交换变量

最近重新看了看C和C++,觉得有些地方挺有意思。作为一开始不管什么资料都会用来做例子的一个程序,交换变量。不管在哪,常用的int,float,double类型的变量都是值类型的,作为参数传到函数(方法...