| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 838 人关注过本帖
标题:用c语言输出歌的名字
只看楼主 加入收藏
会飞的蛋
Rank: 1
等 级:新手上路
帖 子:16
专家分:5
注 册:2013-6-10
结帖率:50%
收藏
已结贴  问题点数:10 回复次数:6 
用c语言输出歌的名字
用c语言输出歌的名字如题


如:D\music\童话.MP3->童话
搜索更多相关主题的帖子: music c语言 童话 
2013-07-01 15:40
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:0 
从理论上讲,C/C++可不会去规定“:”“\”等平台相关的东西
我只知道windows上可以用 _splitpath 函数来分解出 文件名,当然你可以用strrchr来查找"\"

在windows平台上,要想做得好,我觉得是
a. 用 GetFullPathName 取得正规的名字
b. 用 _tsplitpath 分解出文件名
2013-07-01 15:58
会飞的蛋
Rank: 1
等 级:新手上路
帖 子:16
专家分:5
注 册:2013-6-10
收藏
得分:0 
回复 2楼 rjsp
老师写得这个程序是什么意思啊     有点看不懂
#include<stdio.h>

char* getFileName(const char*p)
{
    return NULL;
}


int main(int argc,char *argv[])
{

    char *p="/root/media/test.mp3";
    char *p2="/home/user/music/yesterday.mp3";
    char *name=NULL;


    printf("yesterday\n");
    name=getFileName(p);


    printf("");
    name=getFileName(p2);


    printf("");
    return 0;
}
2013-07-01 17:09
senpujituan
Rank: 4
等 级:业余侠客
帖 子:91
专家分:203
注 册:2012-6-29
收藏
得分:1 
回复 3楼 会飞的蛋
没什么意思吧,直观上只是打印了下yesterday
2013-07-01 21:29
suixinwuji1
Rank: 2
等 级:论坛游民
帖 子:11
专家分:13
注 册:2013-6-12
收藏
得分:0 
文件吧,打开那首歌
2013-07-01 23:24
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:9 
回复 3楼 会飞的蛋
帮你写一个吧

程序代码:
#include <stdio.h>
#include <string.h>

const char* getfilename( const char* path, char delimit, size_t* n )
{
    const char* p1 = strrchr( path, delimit );
    const char* p2 = strrchr( path, '.' );

    if( !p1 )
        p1 = path-1;
    if( !p2 || p2<p1 )
        p2 = path+strlen(path);

    *n = p2 - p1 - 1;
    return p1+1;
}

void printfilename( const char* path, char delimit )
{
    size_t n;
    const char* p = getfilename( path, delimit, &n );
    printf( "%.*s\n", n, p );
}

int main()
{
    printfilename( "", '/' );
    printfilename( "test", '/' );
    printfilename( "test.mp3", '/' );
    printfilename( "mdeia/test", '/' );
    printfilename( "mdeia.1/test", '/' );
    printfilename( "mdeia.1/test.mp3", '/' );

    printfilename( "/root/media/test.mp3", '/' );
    printfilename( "/home/user/music/yesterday.mp3", '/' );
    printfilename( "D:\\music\\童话.MP3", '\\' );

    return 0;
}

输出
程序代码:
test
test
test
test
test
test
yesterday
童话

2013-07-02 08:42
丿嗨丶贝贝
Rank: 1
等 级:新手上路
帖 子:4
专家分:5
注 册:2013-7-1
收藏
得分:0 
2013-07-03 17:28
快速回复:用c语言输出歌的名字
数据加载中...
 
   



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

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