C语言判断文件夹名是否合法



/***************************************************************************

* Function Name: validateFoldername

* Description:  The ength of folder name should be less than 255.

*                      Illegal characters are \<>()[]&:,/|?* \0 ~ \31

* Return: 0 for success, otherwise 1.

****************************************************************************/

#define MAX_FOLDER_NAME_LEN 255

int validateFoldername(char *pName)

{

int ret = 0;

unsigned int u32Length = 0, u32Index = 0;

unsigned char u8SpecialChar[] = {‘\\‘,‘<‘,‘>‘,‘(‘,‘)‘,‘[‘,‘]‘,‘&‘,‘:‘,‘,‘,‘/‘,‘|‘,‘?‘,‘*‘};

unsigned char u8CtrlCharBegin = 0x0, u8CtrlCharEnd = 0x31;

if (pName == NULL)

{

ret = 1;

}

else

{

u32Length = strlen(pName);

if ( u32Length >= MAX_FOLDER_NAME_LEN)

ret= 1;

}

for (u32Index = 0; (u32Index < u32Length) && (ret== 0);

u32Index ++)

{

if (u8CtrlCharBegin <= pName[u32Index] <= u8CtrlCharEnd)

{

ret= 1;

}

else if (strchr(u8SpecialChar,pName[u32Index]) != NULL)

{

ret= 1;

}

}

return ret;

}

时间: 2024-10-12 20:57:53

C语言判断文件夹名是否合法的相关文章

C# 选择文件、选择文件夹、打开文件(或者文件夹) 路径中获取文件全路径、目录、扩展名、文件名称 追加、拷贝、删除、移动文件、创建目录 修改文件名、文件夹名!!

https://www.cnblogs.com/zhlziliaoku/p/5241097.html 1.选择文件用OpenDialog OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true;//该值确定是否可以选择多个文件 dialog.Title = "请选择文件夹"; dialog.Filter = "所有文件(*.*)|*.*"; if (dialog.ShowDial

matlab从文件夹名中获得该文件夹下所图像文件名

function [s,nameC]=get_FileNameFromFolderPath(path) % 函数调用:[s,nameC]=get_FileNameFromFolderPath(path) % 函数功能:从文件夹名中获得该文件夹下所图像文件名 % 函数输入:path 为文件夹路径 % 函数输出:s 表示状态,当为0时表示正确 % nameC 表示获得的图像名的胞体cell % 函数历史:v0.0 @2013-01-27 created by Aborn cmd = sprintf(

如何在linux系统下对文件夹名有空格的文件夹进行操作

http://www.2cto.com/os/201409/335119.html 在Windows操作系统中可以轻易地创建\移动\删除文件夹名带有空格的文件夹, 而在linux则需要进行一些特殊的处理才能实现以上功能. (1)创建文件夹 mkdir my\ first 这条命令创建了文件夹"my first",文件夹名中my和first之间有一个空格,在命令行中需要 添加一个"\"符号和一个空格的组合 mkdir my\ \ tow 这条命令创建了文件夹"

Android多语言支持以及各国语言Values文件夹命名规则

创建好的项目工程由于需求 需要做多国语言的支持  下面介绍怎么快捷的创建文件夹 建好一个android 的项目后,默认的res下面 有layout.values.drawable等目录 这些都是程序默认的资源文件目录,如果要实现多语言版本的话,我们就要添加要实现语言的对应的资源文件. 首先我们点击添加Android Xml File按钮,在Resource Type中选择Values 在File中输入string.xml ,会出现下面的界面: 下面 以添加一个 英语(美国):values-en-

C# 判断文件夹是否为空

//pbak是要检查是否为空的文件夹路径        if (Directory.GetDirectories(pbak).Length > 0 || Directory.GetFiles(pbak).Length > 0)        {            Response.Write("<script>alert('文件夹不为空!');</script>");        } C# 判断文件夹是否为空,布布扣,bubuko.com

shell 判断文件夹或文件是否存在

文件夹不存在则创建 if [ ! -d "/data/" ];then mkdir /data else echo "文件夹已经存在" fi 文件存在则删除 if [ ! -f "/data/filename" ];then echo "文件不存在" else rm -rf /data/filename fi 判断文件夹是否存在 if [ -d "/data/" ];then echo "文件夹存

获取某文件夹下所有文件名、文件夹名、后缀名

今天在提交github时,突然觉得提交得很慢,想到github允许设置.gitignore文件进行某些后缀名的忽略,于是乎决定好好设置一下.gitimnore. 于是乎....我发现,一个很大的项目,或者一个很杂乱的文件库,很难知道这里面到底存在哪些后缀名的文件,一个文件夹一个文件夹的找又太慢,而且容易出错. 于是乎....我开始敲代码了,顺带着把获取某文件夹下所有文件名.文件夹名.后缀名这三个功能一起实现了. [来看效果] 不输入参数时或者第一个参数输入"\"时,默认为当前目录,显示

判断文件夹是否存在,不存在则创建对应文件夹

// 判断文件夹是否存在,不存在则创建对应文件夹 NSFileManager *fileManager = [NSFileManager defaultManager]; NSString *path = @"/Users/apple/Desktop/导出路径/嘻嘻"; BOOL isDir = FALSE; BOOL isDirExist = [fileManager fileExistsAtPath:path isDirectory:&isDir]; if(!(isDirE

linux下使用c判断文件夹是否为空的小程序

/*自己写了一个 判断文件夹是否为空的小代码 打开文件夹的函数在man的时候要加 man 3 readdir,  */ #include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <dirent.h>int isdirempty(char *dirname){    /* 打开要进行匹配的文件目录 */    DIR *dir =