| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2467 人关注过本帖
标题:求高手,如何修改已知文件的扩展名,并另存为?
只看楼主 加入收藏
C语言学徒
Rank: 2
来 自:NamKing
等 级:论坛游民
帖 子:51
专家分:22
注 册:2009-2-27
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:4 
求高手,如何修改已知文件的扩展名,并另存为?
写一个函数,char *ChangeExt(char *FileName,char *Ext)其作用是:如果文件名FileName已有扩展名,则将文件名更换为Ext,否则添加扩展名为Ext,新的文件名仍存放于FileName,并作为返回值,注意,FileName中可能含有文件夹名字,而且文件夹名字中可能包含扩展名,例如:
 D:\my.source\f001     D:\learn\f001.ttt
 第一个文件没有扩展名,第二个文件有扩展名,  如果Ext为"txt",则分别改为
 D:\my.source\f001.txt D:\learn\f001.txt


请高手给个思路,写个程序看下,谢谢了啊。
搜索更多相关主题的帖子: 文件 扩展名 
2009-11-11 10:42
tdy1006
Rank: 4
等 级:业余侠客
帖 子:173
专家分:240
注 册:2009-5-13
收藏
得分:20 
这样试试
倒着找'.'或‘\’找到一个停止循环
如果找到'.'就把'.'后面的改成"txt"
如果找到'\'就把"txt"加上
2009-11-11 12:19
C语言学徒
Rank: 2
来 自:NamKing
等 级:论坛游民
帖 子:51
专家分:22
注 册:2009-2-27
收藏
得分:0 
麻烦说的详细点,高手写下程序,谢谢!
2009-11-11 19:43
tdy1006
Rank: 4
等 级:业余侠客
帖 子:173
专家分:240
注 册:2009-5-13
收藏
得分:0 
以下是引用C语言学徒在2009-11-11 19:43:39的发言:

麻烦说的详细点,高手写下程序,谢谢!
那你的文件名是怎么获取的,是自己在目录下找?
2009-11-11 20:33
tdy1006
Rank: 4
等 级:业余侠客
帖 子:173
专家分:240
注 册:2009-5-13
收藏
得分:0 
程序代码:
char *ChangeExt(char *FileName,char *Ext)
{
    int len=strlen(FileName);
    int k=len-1,t=0;
    while(k>=0)
    {
        if(FileName[k]=='\\')
            {strcat(FileName,Ext);break;}
        else if(FileName[k]=='.')
         {
            for(k=k+1;t<=strlen(Ext);t++)
                FileName[k++]=Ext[t];
            FileName[k]='\0';
            break;
         }
        else k--;
    }
return FileName;
}
不晓得能不能用哈,我也不能调试一下,能不能把你获取文件名的函数也发出来
2009-11-11 20:44
快速回复:求高手,如何修改已知文件的扩展名,并另存为?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.062932 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved