首页 > 其他分享 >文件名特殊字符去除

文件名特殊字符去除

时间:2023-06-04 10:01:20浏览次数:44  
标签:Arrays String 文件名 int cleanName illegalChars static 去除 特殊字符

文件名特殊字符去除_文件名特殊字符去除

  • java去掉特殊字符工具类

package com.pig4cloud.pigx.edi.utils;

import java.util.Arrays;

/**
 * 文件名去掉特殊字符
 */
public class FileNameCleanerUtil {
   final static int[] illegalChars = {34, 60, 62, 124, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 58, 42, 63, 92, 47};
   static {
      Arrays.sort(illegalChars);
   }
   public static String cleanFileName(String badFileName) {
      StringBuilder cleanName = new StringBuilder();
      for (int i = 0; i < badFileName.length(); i++) {
         int c = (int)badFileName.charAt(i);
         if (Arrays.binarySearch(illegalChars, c) < 0) {
            cleanName.append((char)c);
         }
      }
      return cleanName.toString();
   }
}

  • 测试类

@Test
public void fileNameValidateTest(){
   String fileName="XXXXX\\/:?*<>|XX_X88XX";
   System.out.println(FileNameCleanerUtil.cleanFileName(fileName));

}

标签:Arrays,String,文件名,int,cleanName,illegalChars,static,去除,特殊字符
From: https://blog.51cto.com/chengzheng183/6410007

相关文章

  • 数据窗口中列值为空值时用特殊字符'/'替换
    说明:需要用公式来判断该值//列为char型if(len(trim(smell))>0,trim(smell),'/')//列为numeric型if(wool_spec>0,String(wool_spec,'###,##0.00'),'/') 效果如下: ......
  • IIS短文件名泄露漏洞
    1、windows的短文件名机制(1)介绍为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows8.3短文件名。dir/x列出当前目录的子目录和文件,以及相应的8.3兼容名称(如果有的话)win10,默认是没有开启8.3兼容特性,无法显示短文件名(2)命令fsutilbehavio......
  • linux 中find命令查找到文件仅显示文件名、路径名、完整路径
     001、[root@PC1test3]#lstest1test2[root@PC1test3]#tree##测试数据.├──test1│  └──a.txt└──test2└──b.txt2directories,2files[root@PC1test3]#find./-name"*.txt"##一般显示模式./test1/a.txt......
  • stata 当前日期时间作为文件名
    globalroot="d:\statashu"localwjm=subinstr(subinstr("`c(current_date)'",":","",.),"","",.)localyear=year(date("`wjm'","DMY"))localmonth=substr("00"......
  • 批量删除/修改文件名中的某些字符串
    问题解决1.首先要批处理文件(夹),放在同一文件目录下。如:2.在该目录下,新建文本文件,输入以下代码,如:set/pstr1=请输入要替换的文件(文件夹)名字符串(可替换空格):set/pstr2=请输入替换后的文件(文件夹)名字符串(若删除直接回车):for/f"delims="%%ain('dir/s/b^|sort/......
  • IIS短文件名暴力枚举漏洞利用工具(IIS shortname Scanner)
    脚本可以测试对应的URL是否存在漏洞,若存在漏洞,则猜解文件夹下所有的短文件名:包括文件和文件名。网上早前已经有公开的工具了:https://code.google.com/p/iis-shortname-scanner-poc/我没有参考他的代码。自己用python实现了一个漏洞利用脚本。简单测试,发现比上面的POC能猜解到更......
  • linux 中 awk命令实现批量修改文件名
     001、[root@PC1test]#lsa.txtb.txtc.txt[root@PC1test]#find*.txta.txtb.txtc.txt[root@PC1test]#find*.txt|awk'{print"mv",$0,$0".bak"}'mva.txta.txt.bakmvb.txtb.txt.bakmvc.txtc.txt.bak[root@PC1t......
  • 去除Flutter项目dart文件在vscode里出现波浪号
    问题示例: 去掉Flutter项目在vscode里打开显示的蓝色波浪线解决办法: ......
  • 前端vue中实现文件下载的几种方法 四种方法, a.download = "重新下命名下载文件名"
    前端vue中实现文件下载的几种方法原文链接:https://blog.csdn.net/weixin_46074961/article/details/105677732第一种前端创建超链接,通过a标签向后端发送get请求,需要给a标签添加一个download属性这种写法是创造了一个a标签,把地址写到a标签里再用js调用点击,实现访问文件地址......
  • 批处理如何提取文件位置和文件名 不包括后缀
    比如我已经得到一个文件路径C:\abc\file1.abc现在我要将这个路径中得到C:\abc\file1这个字符串就可以我想知道怎么控制取得最好是能有一个完整答案在该目录下面建立一个同名文件但是后缀不一样例如知道文件C:\abc\file1.abc我要建立一个C:\abc\file1.xyz这样一个文件该怎......