需求:通过浏览器获取文件,判断文件是否合法。
实现原理:校验基本上分为三种情况,基于文件全名、文件名、或者扩展名进行校验。
核心代码:
var inputFileValue = ... //获取到fileInput的值;
var fullFileName=form1.file.value.match(/([^\\^\/^\:^\?^\|^\<^\>^\|])*(\.)(.{1,8})$/)[0];//获取文件全名
var fileName=fullFileName.match(/[^\.]+/)[0];//文件名,不带点和后缀
var type=form1.file.value.match(/^(.*)(\.)(.{1,8})$/)[3];//文件类型
后面就比较简单了,根据业务逻辑进行判断就行了。
相关推荐
如果只需要文件名(不包含扩展名),可以结合`strrchr()`和`str_replace()`函数来移除最后一个点(.)及其后面的部分: ```php $filename = str_replace(strrchr($filename, '.'), '', $filename); echo $filename,...
1. **生成文件名**:为了防止文件覆盖问题,通常会采用时间戳加文件扩展名的方式生成唯一的文件名。 ```java Date date = new Date(); String filename = date.getTime() + myfileFileName.substring...
通过它,可以得到上传文件的文件名、文件大小、扩展名、文件数据等信息。 File类主要提供以下方法: 1、saveAs作用:将文件换名另存。 原型: public void saveAs(java.lang.String destFilePathName) 或 ...
- **作用**:获取文件全名(包括目录)。 - **原型**:`public String getFilePathName()` 6. **getFileExt 方法** - **作用**:获取文件扩展名(后缀)。 - **原型**:`public String getFileExt()` 7. **get...
$(FilePath) 文件路径(文件全名,含目录和文件名) $(FileDir) 文件目录(不带文件名) $(FileName) 文件名(不带目录) $(FileNameNoExt) 不带扩展名的文件名(不带目录) $(FileExt) 扩展名(当前文件) $...
- **WNetGetUniversalName**:获取网络中一个文件的远程名称以及/或者UNC(统一命名规范)名称。 - **WNetGetUser**:获取一个网络资源用以连接的名字。 #### 2. API之消息函数 ##### BroadcastSystemMessage - *...
$(FilePath) 文件路径(文件全名,含目录和文件名) $(FileDir) 文件目录(不带文件名) $(FileName) 文件名(不带目录) $(FileNameNoExt) 不带扩展名的文件名(不带目录) $(FileExt) 扩展名(当前文件) $...
③ “文件-新建-text”,就可以建立一个空的文本文件,保存时,这个文件自动带有扩展名".txt",也就避免了令人头疼的确认 ④ 模板设置文件名称为“template.ini”,如果和主程序同一路径,可以使用相对路径 罗嗦了...
资源全名:dart_hj3415-0.1.1.tar.gz"进一步确认了这个资源的确是从PyPI获取的,完整的文件名包括了库的名称、版本号以及压缩文件的扩展名。`.tar.gz`是一种常见的压缩格式,通常用于Linux和Unix系统,它将多个文件...
资源全名:hourly-0.3.11.tar.gz",这确认了该文件是从PyPI官方源获取的,且文件名与标题相吻合,是`hourly`项目的源代码压缩包,版本号为0.3.11,文件类型为tar.gz,这是一种常见的用于归档和分发Unix/Linux系统中...
`.tar.gz`扩展名表示这个包是以tarball格式压缩的,这是一种常见的Linux和Unix系统中用来打包和压缩文件的方法。 描述中提到"资源全名:coala-0.4.1.dev20160210111949.tar.gz",进一步确认了下载的文件名,这通常...
我们只看到`pachy-0.1-4-g773b`,这很可能是指解压后的目录名,通常在`.tar.gz`压缩包中,解压后会得到一个与压缩包文件名相同但不带扩展名的目录,里面包含库的源代码、元数据、文档等文件。 Python库的发布通常...
标题中的"PyPI 官网下载 | blaster-server-0.0.335b0.tar.gz"表明这是一个从Python Package Index(PyPI)官方源下载的软件包,名为"blaster-server",版本号为0.0.335b0,并且是打包成tar.gz格式的压缩文件。...
文件扩展名".whl"表明这是一个预编译的Python轮子文件,它是Python的一种二进制包格式,用于简化安装过程。 描述中提到的“资源来自pypi官网,解压后可用”,意味着这个文件是直接从PyPI官方源下载的,确保了其安全...
描述中的“资源来自pypi官网,资源全名:sftp_composer-0.0.1.tar.gz”进一步确认了这个包的来源和文件名。`.tar.gz`是Linux和Unix系统中常用的归档格式,它将多个文件打包成一个文件,并使用gzip进行压缩,便于传输...
资源全名:django-facebook-pages-statistic-0.6.0.tar.gz"进一步确认了这个资源的来源,并提供了完整的文件名,表明它是一个可以下载并安装的Python包。 **Python库的理解** 在Python编程中,库是预编写的功能...
描述中的“资源来自pypi官网,资源全名:aws-s3-tools-0.0.2.tar.gz”进一步确认了这个包是从PyPI官方源获取的,完整文件名包括版本号和文件扩展名,表明这是一款用于Amazon S3操作的Python工具集。 标签“Python库...
".tar.gz"扩展名表示这是一个使用tar工具打包并用gzip进行压缩的文件,这是一种常见的在Unix和Linux系统中归档和分发软件的方式。在Python的世界里,这种格式常用于上传到PyPI的源码发行版。 标签为"Python库",...
资源全名:glean_parser-1.15.0.tar.gz"进一步确认了这个软件包的来源以及它的完整文件名。"glean_parser"很可能是一个Python解析器,用于处理特定格式的数据或语言,而".tar.gz"是一个常见的压缩格式,通常用于在...