校验文件后缀java

时间: 2023-11-10 21:00:30 浏览: 38
校验文件后缀的方法可以使用以下代码片段中的其中一种方法: 1. 获取文件名并截取后缀名: ``` String fileName = file.getOriginalFilename(); String suffixName = fileName.substring(fileName.lastIndexOf(".")); ``` 2. 使用endsWith()方法判断文件后缀: ``` if (!(file.getOriginalFilename().endsWith(".java"))) { throw new BaseException("文件格式错误,请选择.java文件!"); } ``` 以上两种方法都可以用来校验文件的后缀是否为.java。
相关问题

java 文件分片上传校验文件后缀名

Java文件分片上传校验文件后缀名可以通过以下步骤实现: 1. 获取上传的文件名,可以通过HttpServletRequest对象的getOriginalFilename()方法获取。 2. 根据文件名获取文件后缀名,可以通过String类的substring()和lastIndexOf()方法实现: ```java String fileName = request.getOriginalFilename(); String fileSuffix = fileName.substring(fileName.lastIndexOf(".") + 1); ``` 3. 对比文件后缀名是否合法,可以通过if语句判断: ```java if ("jpg".equals(fileSuffix) || "png".equals(fileSuffix) || "gif".equals(fileSuffix)) { // 文件后缀名合法,进行上传操作 } else { // 文件后缀名不合法,提示用户 } ``` 注意:在校验文件后缀名时,需要根据实际需求来确定允许上传的文件类型。上述示例只是一个简单的示例,具体的文件类型需要根据实际情况进行调整。

java实现上传文件校验文件后缀名、文件大小、文件名字的工具方法

可以使用以下代码实现上传文件校验: ```java public static boolean validateFile(MultipartFile file) { // 获取文件名 String fileName = file.getOriginalFilename(); // 获取文件后缀名 String suffix = fileName.substring(fileName.lastIndexOf(".") + 1); // 定义允许上传的文件类型 String[] allowedTypes = {"jpg", "jpeg", "png", "gif"}; // 定义允许上传的文件大小,单位为MB long maxSize = 10; // 判断文件类型是否允许上传 boolean allowed = Arrays.asList(allowedTypes).contains(suffix.toLowerCase()); // 判断文件大小是否超过限制 boolean sizeAllowed = file.getSize() / 1024 / 1024 <= maxSize; // 判断文件名是否合法 boolean nameAllowed = fileName.matches("[a-zA-Z0-9_\\-\\.]+"); // 返回校验结果 return allowed && sizeAllowed && nameAllowed; } ``` 这个方法接收一个 MultipartFile 对象作为参数,可以校验文件的后缀名、大小和文件名是否合法。如果校验通过,返回 true,否则返回 false。

相关推荐

package com.de.debook.controller; import com.de.debook.bo.ResponseBean; import com.de.debook.constant.WebConstant; import com.de.debook.utils.FileUploadUtils; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.IOException; import java.util.Map; @RestController public class UploadFileController { private static final int FILE_SIZE_MAX = 20 * 1024 * 1024; // 上传限制大小 /** * @param multipartFile * @description: 通用文件上传处理器 * @return: java.util.Map<java.lang.String , java.lang.Object> */ @RequestMapping(value = "/uploadFile", produces = "application/json;charset=UTF-8") public Map<String, Object> fileUpload(@RequestParam("file") MultipartFile multipartFile) { ResponseBean responseBean = new ResponseBean(); if (multipartFile != null) { String realName = multipartFile.getOriginalFilename(); // 原始文件名 String suffix = FileUploadUtils.fileSuffix(realName); // 文件名后缀 String tmpFileName = FileUploadUtils.createTmpFileName(suffix); // 生成保证不重复的临时文件名 if (multipartFile.getSize() > FILE_SIZE_MAX) { responseBean.putError("上传失败:文件大小不得超过20MB"); return responseBean.getResponseMap(); } File tmpFile = new File(WebConstant.FILE_STORAGE_ROOT,tmpFileName); try { multipartFile.transferTo(tmpFile); // 写入本地 responseBean.putData("data", "/images/" + tmpFileName); } catch (IOException e) { responseBean.putError("上传失败:" + e.getMessage()); e.printStackTrace(); } } return responseBean.getResponseMap(); } }这段代码中怎末实现的图片上传

最新推荐

recommend-type

Java防止文件被篡改之文件校验功能的实例代码

主要介绍了Java防止文件被篡改之文件校验功能,本文给大家分享了文件校验和原理及具体实现思路,需要的朋友可以参考下
recommend-type

华为OD机试D卷 - 用连续自然数之和来表达整数 - 免费看解析和代码.html

私信博主免费获取真题解析以及代码
recommend-type

Screenshot_2024-05-10-20-21-01-857_com.chaoxing.mobile.jpg

Screenshot_2024-05-10-20-21-01-857_com.chaoxing.mobile.jpg
recommend-type

数字图像处理|Matlab-频域增强实验-彩色图像的频域滤波.zip

数字图像处理|Matlab-频域增强实验-彩色图像的频域滤波.zip
recommend-type

2024-2030中国定向转向膜市场现状研究分析与发展前景预测报告.docx

2024-2030中国定向转向膜市场现状研究分析与发展前景预测报告
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

spring添加xml配置文件

1. 创建一个新的Spring配置文件,例如"applicationContext.xml"。 2. 在文件头部添加XML命名空间和schema定义,如下所示: ``` <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。