#include <stdlib.h>
#include <string.h>
/*
/2011-12-03-10-30-20-256/xxx.swf
--> xxx.swf
/xxx.swf
--> xxx.swf
*/
char * getFilename(const char * in, char * out)
{
char * ret = NULL;
char * t;
if (in && out)
{
out[0] = 0;
out[1] = 0;
if (in[0] == '/' &&
(t = strchr(in + 2, '/'))) {
strcpy(out, t + 1);
ret = out;
} else if (in[0] == '/'){
strcpy(out, in + 1);
ret = out;
}
}
return ret;
}
#include <stdio.h>
int main()
{
char * ret;
char * in;
char out[256];
in = "/2011-12-03-10-30-20-256/xxx.swf";
printf("in : %s\n", in);
ret = getFilename(in, out);
if (ret) {
printf("--> %s\n", ret);
} else {
printf("--> get name failed!\n");
}
in = "/xxx.swf";
printf("in : %s\n", in);
ret = getFilename(in, out);
if (ret) {
printf("--> %s\n", ret);
} else {
printf("--> get name failed!\n");
}
in = "xxx.swf";
printf("in : %s\n", in);
ret = getFilename(in, out);
if (ret) {
printf("--> %s\n", ret);
} else {
printf("--> get name failed!\n");
}
return 0;
}
运行结果:
in : /2011-12-03-10-30-20-256/xxx.swf
--> xxx.swf
in : /xxx.swf
--> xxx.swf
in : xxx.swf
--> get name failed!