调用文件重命名函数rename失败,errno的值为17,如何解决?

void onMenuDele(char *id)
{
FILE *p=fopen("f:\employee.txt","r"); //打开文件
if(p==NULL)
{
printf("Sorry!employee.txt cannot open!\n");
return ;
}

FILE *fp2=fopen("f:\\employ.txt","w+");     //创建临时文件
if(fp2==NULL)
{
    printf("Sorry!employ.txt cannot open!\n");
    return ;
}

char s[68];
char t[4],*q=id;

while(!feof(p))
{  
    fgets(s,68,p);
    if(!feof(p))
    {
        int count=0;
        id=q;

        for(int i=3,j=0;i<=6,j<4;i++,j++)
        {
            t[j]=s[i];
            if(t[j]==*id)
            {
                id++;
                count++;
            }
        }

        if(count!=4)
            fprintf(fp2,"%s",s);
    }
} 

fclose(p);
fclose(fp2);

/*if(remove("f:\\employee.txt")==0)
    printf("The file has been deleted!\n");
else
    printf("Sorry!The file cannot be deleted!\n");

if(rename("f:\\employ.txt","f:\\employee.txt")==0)
    printf("The file has been renamed!\n");
else
    printf("Sorry!The file cannot be renamed!\n");*/
int re_remove=remove("f:\\employee.txt");
int re_rename=rename("f:\\employ.txt","f:\\employee.txt");
printf("re_remove=%d",re_remove);
printf("re_rename=%d",re_rename);

int errno_t=errno;
printf("errno=%d",errno_t);

}

c
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
os.rename 遇见的文件消失问题
本人近期要重新命名一个文件夹内的图片,最后发现rename后原来的78张图片只剩下了42张,之后调试程序,发现新的名字会更新旧的名字,如果新的名字跟你原来的文件夹内图片文件名字一样,新的就会替换以前有相同名字的图片。...
rename函数的用法
 rename(更改文件名称或位置)  相关函数  link,unlink,symlink表头文件  #include定义函数  int rename(const char * oldpath,const char * newpath);函数说明  rename()会将参数oldpath 所指定的文件名称改为参数newpath所指的文件名称。若newpath所指定的文件已存在,则会被删除。返回
c++ 删除remove、重命名rename文件失败原因
ifstream fin(filename1); ofstream fout(filename2); …… …… remove(filename1); rename(filename2,filename1); 因为在删除文件之前忘记关闭流   在其前面添加以下代码即可: fin.close(); fout.close();
File下的rename()方法。。。靠不住
以前我一直以为File#renameTo(File)方法与OS下面的 move/mv 命令是相同的,可以达到改名、移动文件的目的。不过后来经常发现问题:File#renameTo(File)方法会返回失败(false),文件没有移动,又查不出原因,再后来干脆弃用该方法,自己实现一个copy方法,问题倒是再也没有出现过。  昨天老板同学又遇到这个问题,File#renameTo(File)方法
Java File RenameTo函数返回false及正确写法
用了renameTo方法,总是返回false,没仔细找哪里的问题,看其他博客说文件不存在会导致false,不同系统也会产生false 学习别人的写法: File target = new File(targetDir, newName);File file1 = new File((new StringBuilder()).append(uploadPath).append(File.sepa
巧妙地解决Log4j文件重命名失败的问题
报错信息: Failed to rename [/opt/proj.log] to [/opt/proj.log.2014-03-20]. 这个算是log4j.DailyRollingFileAppender的一个BUG。 文件重命名失败 Java进行了其他的读写流之类的操作,然后重命名文件,则操作失败。
rename() 函数 解决重命名中文---PHP
rename()函数可以重命名文件、目录等,但是要注意目的地和起始地址的编码。 比如:我的PHP文件编码是UTF-8,但是在WINDOW系统中中文默认编码是GBK,因此我应该这样写 $newFileName\$filename是UTF-8编码. rename(iconv('UTF-8','GBK',$dir.$filename), iconv('UTF-8','GBK',$dir.$ne
php rename 中文出错
rename()函数可以重命名文件、目录等,但是要注意目的地和起始地址的编码。 比如:我的PHP文件编码是UTF-8,但是在WINDOW系统中中文默认编码是GBK,因此我应该这样写 $newFileName\$filename是UTF-8编码. rename(iconv('UTF-8','GBK',$dir.$filename), iconv('UTF-8','GBK',$d
rename() 函数 解决重命名中文---PHP
rename()函数可以重命名文件、目录等,但是要注意目的地和起始地址的编码。 比如:我的PHP文件编码是UTF-8,但是在WINDOW系统中中文默认编码是GBK,因此我应该这样写 $newFileName\$filename是UTF-8编码. rename(iconv('UTF-8','GBK',$dir.$filename), iconv('UTF-8','GBK',$d
Java实现文件重命名 以及file类的其他函数讲解
/** *//**文件重命名 * @param path 文件目录 * @param oldname 原来的文件名 * @param newname 新文件名 */ public void renameFile(String path,String oldname,String newname)...{ if(!oldname.
C语言rename()函数:重命名文件或目录
头文件:#include 函数rename()用于重命名文件、改变文件路径或更改目录名称,其原型为     int rename(char * oldname, char * newname); 【参数】oldname为旧文件名,newname为新文件名。 【返回值】修改文件名成功则返回0,否则返回-1。 重命名文件: 如果newname指定的文件存在,则会被删除
Rename(重命名程序)
专业修改特定文件夹下所有文件名,特别是训练分类器的过程中非常实用~
phpstorm rename重命名规则
如题所示,万一想在phpstorm中重命名的话,不能像sublime text中点击右键(需要插件)来重命名。但是他有一个技巧就是shift+F6, 不是技术问题,方便喔以后查询。
C++获取文件夹所有文件,并rename重命名
#include #include #include #include using namespace std; int main() { string newname = "C:\\Users\\LYH\\Desktop\\rename\\rename\\test\\image_disciple_"; int num = 1099; _finddata_t file; long l
VC中如何重命名一个文件?
VC中如何重命名一个文件? (2009-04-27 21:52:25) 转载▼ 标签: 电脑 setup.exe vc kill 斜杠 it 分类: 计算机及应用 VC中如何重命名一个文件? 假设将d:\temp\kill\setup.exe文件重命名为d:\temp\a.exe 可写为 rename("d:\\temp\\
Linux出错处理 关于errno
长期以来,UNIX系统一直使用两种不同的时间值:     (1)日历时间:该值是自1970年1月1日00:00:00以来国际标准时间(UTC)所经过的秒数累计值(UTC曾被称为格林尼治时间)。这些时间值可用于记录文件最后一次的修改时间等。     系统基本数据类型time_t用于保存这种时间值。     (2)进程时间:这也被称为CPU时间,用以度量进程使用的中央处理机资源。进程时间以时
linux系统调用函数 rename/getcwd/chdir/mkdir/rmdir--目录操作相关函数
1.文件重命名 在linux的shell解释器中输入mv 原文件名 新文件名即可进行重命名,实际上C库函数提供了具有相同功能的系统调用函数rename。 所需头文件:#include&amp;lt;stdio.h&amp;gt; 函数原型: int rename(const char *oldpath,const char *newpath) 参数: oldpath原文件名,newpath为新文件名。 ...
MATLAB使用eval函数批量修改文件名
今天要做双目摄像机的标定,我左右各拍了六张图片(比较少,只是为了走一下MATLAB和opencv标定的流程,所以只用几张),可是不能用下划线,于是需要统一改一下,其实十二张,手动比费半天时间查资料还剩时间,但假如需改名的文件很多,那就有必要写个小程序了。首先,了解下eval函数(参考链接1),然后开始使用eval函数修改(链接2),最后,可以再试一下其它方法(链接3),如movefile,但据说这...
rename重命名文件方法
原文链接:http://blog.csdn.net/zhaoweixing1989/article/details/8954452 摘要:   本文介绍rename命令完成重命名批量文件语法,介绍了rename用到的Perl的替换和转化形式,并给出常用正规表达式。最后给出几个实例。   偶尔会遇到需要重命名批量文件,最典型的例子就是数码相机的相片,在Ubuntu可以用工具Purrr或
idea 重命名等
  重命名 shift+F6    
在C#中操作FTP完成rename操作
refer:  http://sureshjangid.blogspot.com/2010/03/ftp-file-rename-in-c-win-application.html FTP File Rename In C# Win Application // Posted By Suresh FtpWebRequest reqFTP; try { reqF
使用svn时,重命名失败的小问题
这个问题遇到几次了,比如我把Manage.jsp重命名为manage.jsp时就会出错 看到svn的控制台有信息,小小摸索后,发现不能重命名如果是仅仅更改大小写的话,就会重命名失败 所以遇到这样的,我就先改成Manage1.jsp,再改成manage.jsp 不太清楚具体原因,猜测和操作系统的大小写敏感性有关,我用的是win,linux还没试过,不知道猜测对不对,做完这个小项目后...
Xcode rename failed(修改类名失败)的解决办法
1.前往文件夹~/Library/Developer/Xcode  2.删除Xcode文件夹下的DerivedData3.等项目加载完成之后,即可rename
关于文件系统中的重命名操作
做文件系统过滤驱动的时候,对文件读写进行控制,遇到了doc文档写的问题,doc写的时候并不是直接写到文件中,而是先建立一个隐藏的tmp文件,写入此文件,然后将源文件删除,再重命名此tmp文件,比较乱,在驱动中通过创建修改访问属性的方法行不通。在驱网搜到一篇帖子,http://forum.driverdevelop.com/read.php?tid-113072.html,其中一大段的英文文章讲到了相关知识,E文水平有限,文章一长就顾不过来了。。。。记下来,有空翻译一下,网络机器翻译严重看不懂,自己来吧。。。
java文件重命名失败问题
我记得之前也遇到这个问题后来找了几个小时才找到问题,这次又花了一个小时找出这个问题,发现是自己的文件流没有关闭,一定要切记,当对文件重命名操作的时候一定要先把操作改文件的文件流关闭之后再进行重命名的操作,切记!切记!切记! ...
svn:重命名文件之后,提交失败问题
解决方法:提交文件所属的目录,这样可以提交成功.
Android文件重命名File.renameTo()以及定义副本名方法(自定义规则)
项目需求 做文件管理相关项目有个需求需要对单个或多个文件进行重命名,这就可能会出现名称重复的情况;还有复制的时候,如果粘贴的地方已存在相同名称文件,也需要进行重命名。 相仿思想: 我们知道在电脑上复制粘贴同一文件(夹)到同一路径下的时候,系统会帮我们自动生成新的副本(Copy)名 比如: MAC是文件名 + ” ” + 数字递增 + 后缀 Windows是文件名 + ”
VC++中windows下的文件复制、删除、重命名操作
转自:http://blog.csdn.net/mmjwung/article/details/8499802 都可以很方便的通过windows.h中的函数来实现 一、文件的复制 [cpp] view plain copy #include    #include    using namespace std;   in
Python os.rename() 重命名目录和文件
概述 os.rename() 方法用于重命名文件或目录,从 src 到 dst,如果dst是一个存在的目录, 将抛出OSError。 语法 rename()方法语法格式如下: os.rename(src, dst) 参数 src – 要修改的目录名 dst – 修改后的目录名 返回值 该方法没有返回值 该方法 可以重命名 文件 和目录, 如果 src参数 对应文件或目录,不存...
rename使用
::rename(origin, dest)将origin重命名为新的名字,如果新名字的文件存在,则删除。 #include&amp;lt;iostream&amp;gt; #include&amp;lt;sstream&amp;gt; #include&amp;lt;string&amp;gt; #include&amp;lt;stdio.h&amp;gt; #include&amp;lt;string.h&amp;gt; using namespace std; i...
Java File renameTo方法重命名文件
From: http://beginnersbook.com/2014/07/how-to-compress-a-file-in-gzip-format/ /* 使用File的renameTo()方法重命名文件 */ import java.io.*; public class Exercise { public static void main(String args[
python的os模块简单重命名操作
# coding=utf-8 import os # 将1355..ts文件名修改为1355.ts # 要修改的文件名目录地址 path = &quot;D:/video/&quot; # 获取当前目录下的所有文件 dirlist = os.listdir(path) for name in dirlist: # 如果扩展名是.ts if name[-3:] ==&quot;.ts&quot;: # 查找第一个点的位置...
SVN 重命名后错误解决方式
revert E:/TEST/video/src/com/crm/util/SocketClient.java    Reverted E:/TEST/video/src/com/crm/util/SocketClient.javacommit -m &quot;&quot; -N E:/TEST/video/src/com/crm/util/SocketThread.java    Unknown action r...
关于java重命名文件出现失败的原因之一
file的renameTo方法对文件进行重命名时,如果重命名不成功,有一个原因之一
iOS开发技巧之:iOS工程的完整重命名方法,绝对有用!
前言: 小伙伴们是否因为新建工程的时候随意写的名字有的可能还是以中文命名的,想上传到github的时候感觉被别人看到low爆了,这时候就需要我们去改掉整个工程的名字。为什么说是完整重命名呢,那就是你以后再也不会看到之前工程的名字了。(你再去创建一个除外!!!!) 本文会把  延时方法Demo 改为  ShortcutButtonDemo 1.准备一个项目。 原始名称
php中rename()函数的妙用
大家都知道,rename()函数可以对文件或目录进行重命名的操作。其实它还可以做很多事情。 熟悉unix的朋友应该知道shell命令mv,它相当与win32的移动,而且移动的同时可进行重命名。我发现,php的rename()函数就相当于mv,它不仅仅只有简单的重命名的功能,同样可以改变文件甚至整个目录的路径。 例如: $oldpath ----文件或目录原来路径 $newpath ----新定义路
C++ CFile::Rename 出现“拒绝访问”异常 及解决方案(不能说原创,自己悟出来的)
出现这样的问题,是由于我们FTP上的的打包文件解包到本地文件夹中,由于FTP上打包文件中含一个.db的文件,再对其文件进行写数据时,出现了拒绝访问异常(其他文件写数据一切正常),没办法只能想办把此类型文件扩展名改成了.tmp临时文件,当数据写完后再改回原来的.db文件,但重命名时就出现了下面异常,废话不多说了。。。问题:C++ 对新创建的文件进行写数据后,如果再对其进行重命名,则可能会出现拒绝访问原因:是因为系统认为当前文件夹中可能与你重命名件同名文件存在,所以不允许重命令,会报出“拒绝访问异常"(个人理解
java中ftp上传、下载、重命名、删除功能实现
与尼尔森数据对接使用了ftp技术,特别留下l
svn提交重命名文件失败得劲解决方法
当本地修改了文件名,或者删除了文件,svn直接commit提交会失败,报错:'filename' because it was moved from 'filename' which is not part of the commit; both sides of the move must be committed together,这时,只需要再提交的时候提交文件夹或者把删除的文件一起提交即可...
如何用matlab实现文件的重命名
范例 ** 首先在D盘建立一个名为example的excell表,现在想将其重新命名为2018_example,这时候需要将matlab的工作路径改为example文件所在路径,并输入以下代码… clc clear oldname = 'example.xlsx'; newname = '2018_example.xlsx'; eval(['!rename' 32 oldname 32 newna...
文章热词 设计制作学习 统计学稳健估计opencv函数 机器学习教程 Objective-C培训 交互设计视频教程
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 达内17大数据课程百度云 区块链解决