FileFilter 遍历某个目录下文件名含有某个字符的文件

由于IIS版本的升级,造成了文件名中含有“+”的特殊字符的文件(多数是图片)在网页中不能被访问,于是必须查找当前目录下含有多少这样的文件,从而制定最佳的解决方案。废话少说,直接上核心代码:publicvoidGetAllFilesInDirectory(stringstrDirectory,stringsearchCh){DirectoryInfodirectory=newDirectoryInfo(strDirectory);DirectoryInfo[]directoryArray=directory.GetDirectories();FileInfo[]fileInfoArray=directory.GetFiles();foreach(variteminfileInfoArray){if(item.Name.IndexOf(searchCh)>-1){......}}foreach(DirectoryInfo_directoryInfoindirectoryArray){DirectoryInfodirectoryA=newDirectoryInf...

ascii转hex算法

ASCII转Hex算法是一种将ASCII码转换为十六进制表示的方法。它将每个ASCII字符转换为一个十六进制数,方便人们阅读和理解。一、定义ASCII转Hex算法是一种将ASCII字符转换为十六进制表示的算法。它可以将每个ASCII字符转换为一个由两个字符组成的十六进制数,例如:A对应0x41,B对应0x42,以此类推。二、用法ASCII转Hex算法常用于需要将ASCII码转换为可读性更高的十六进制表示的情况。例如,在调试程序时,我们可能需要将一些输出信息转换为十六进制形式以便更好地理解。三、重点1.ASCII码与十六进制数的对应关系是关键。每个ASCII字符都有一个对应的十六进制表示,需要牢记这种对应关系。2.算法实现方面,可以使用循环遍历输入的ASCII字符,通过查表或计算得到对应的十六进制数。四、难点1.对于非字母和数字的ASCII字符,如控制字符和特殊符号,可能无法直接转换为有效的十六进制数。需要特别处理这些情况。2.对于大写字母和小写字母的区分,可以根据实际需求进行转换。例如,可以将所有字母都转换为大写字母的十六进制表示。五、注意事项1.在转换过程中,需要注意输入的ASCII...
开发笔记 开发笔记·2024-08-29

Linux中gethostname与其他命令的结合使用

gethostname 是一个Linux命令,用于显示或设置系统的主机名将主机名存储在变量中:HOSTNAME=$(gethostname)echo"Thehostnameis:$HOSTNAME"复制代码与 ssh 命令结合使用,以便根据主机名连接到不同的服务器:#!/bin/bashHOSTNAME=$(gethostname)case$HOSTNAMEinserver1)sshuser@server1.example.com;;server2)sshuser@server2.example.com;;*)echo"Unknownhostname:$HOSTNAME";;esac复制代码与 ifconfig 结合使用,以获取当前主机名对应的IP地址:HOSTNAME=$(gethostname)IP_ADDRESS=$(ifconfig|grep-A1"$HOSTNAME"|tail-n1|cut-d':'-f2|cut-d''-f1)echo"TheIPaddressof$HOSTNAMEis:$IP_ADDRESS"复制代码与&...

rancher和 k8s的关系

Rancher是一个开源的容器管理平台,而Kubernetes(简称K8s)是一个开源的容器编排工具。它们之间的关系可以理解为:1.Rancher是基于Kubernetes构建的。Rancher提供了一个用户友好的管理界面,可以帮助用户轻松部署、管理和监控Kubernetes集群。它通过简化Kubernetes的配置和操作,使得更多的用户可以方便地使用Kubernetes。2.Rancher提供了一些附加功能和工具,以增强Kubernetes的功能。例如,Rancher提供了自定义的应用商店,用户可以从中选择并部署常用的应用程序。Rancher还提供了多租户支持、用户访问控制、日志和监控等功能,以帮助用户更好地管理和维护Kubernetes集群。3.Rancher可以管理多个Kubernetes集群。它允许用户在一个统一的界面中管理多个Kubernetes集群,包括创建、扩展和删除集群。这对于需要管理多个Kubernetes集群的用户来说非常方便。总结来说,Rancher是一个构建在Kubernetes之上的容器管理平台,它通过提供用户友好的界面和额外的功能,帮助用户更轻松地使用和管理...
开发笔记 开发笔记·2024-08-29

几款开源的ETL工具介绍

ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(Extract)、转换(Transform)、加载(Load)至目的端的过程。ETL是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。本文列出了几款开源的ETL工具,并讨论了从ETL转向“无ETL”的过程,因为ELT正迅速成为现代数据和云环境的终极过程。注:原文包含11项ETL工具,本文提取了其中开源的7项,另增加了一款使用普遍的Kettle,如需对另外4项进行了解,可点击文末链接进行查看。 优秀的ETL工具1、ApacheCamel主页:https://camel.apache.orgApacheCamel是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于 POJO(PlainOrdinaryJavaObject,简单的Java对象) 的企业应用模式(EnterpriseIntegrationPatterns)的实现,你可以采用其异常强大且十...

可视化portainer

​Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。而且完全免费,基于容器化的安装方式,方便高效部署。​且支持多种docker编排方式,包括单机、dockerswarm、k8s等。官网:https://www.portainer.io/安装文档:https://www.portainer.io/install使用docker部署ce版本:dockerrun-d-p8000:8000-p9000:9000--name=portainer--restart=alwaysportainer/portainer-ce浏览器访问9000端口即可,第一次需要输入密码。ammin/adminadminadmin然后重新登录即可使用。点击addenvironments选择dockerstandalone需要跑一个portainer-agentdockerrun-d-p9001:9001--nameportainer_agent--restart=always-v/var/run/docker.sock:/var/run/docker...
开发笔记 开发笔记·2024-08-28

echarts 南丁格尔图(玫瑰图)

ECharts是一款由百度开发的数据可视化库,能够通过简单的配置生成各种类型的图表,其中包括南丁格尔图,也称为玫瑰图。南丁格尔图是一种用来展示多个类别数据的图表,通过将圆形等分成多个扇区,并以不同的角度和半径表示不同的数据,来展示数据的分布情况和比例关系。南丁格尔图的制作非常简单,主要分为以下几个步骤:1.准备数据:首先,需要准备好用来绘制南丁格尔图的数据。这些数据通常是一个二维数组,其中每一行代表一个类别,每一列代表该类别下的不同子类别或者数据项,例如:vardata=[{name:'类别1',value:[20,40,60,80]},{name:'类别2',value:[30,50,70,90]},//更多类别数据...];2.配置选项:接下来,需要配置南丁格尔图的各种选项,包括图表的标题、图例、扇区的颜色、标签等。varoption={title:{text:'南丁格尔图示例',subtext:'数据展示',x:'center'},tooltip:{trigger:'item',for...
开发笔记 开发笔记·2024-08-28

echarts 散点图

ECharts是一款由百度开发的优秀的数据可视化库,它支持各种类型的图表,包括折线图、柱状图、饼图等等。其中,散点图是一种非常常见且实用的图表类型,在展示数据分布、相关性等方面具有很好的效果。下面我将详细介绍ECharts中如何使用散点图,并结合一些示例说明其应用。首先,我们需要准备数据。散点图通常用来展示两个变量之间的关系,因此我们需要两组数据,分别代表X轴和Y轴的值。比如,我们要展示学生的数学成绩和语文成绩之间的关系,那么数学成绩就是X轴的值,语文成绩就是Y轴的值。接着,我们使用ECharts库中的scatter模块来创建散点图。首先,我们需要引入ECharts的库文件,并创建一个用于显示图表的DOM容器。然后,我们可以通过JavaScript代码来配置和绘制散点图。下面是一个简单的示例:<!DOCTYPE html><html><head>    <title>ECharts散点图示例</title>    <!-- ...
开发笔记 开发笔记·2024-08-28

Lucene分类统计示例

在检索系统中,遇到了分组统计(Grouping/GroupBy)的需求,比如将搜索结果按照栏目分类,统计每个栏目下各有多少条结果。以前的做法很愚蠢,先发起一次search统计出有多少组,然后在每个组里发起一次search;这样在有N组的情况下一共执行了N+1此搜索,效率低下。最近发现Lucene提供了分组的功能,是通过Collector实现的,最多可以在2次search的时候得出结果,如果内存够用,CachingCollector还可以节约一次查询。第一次第一次的目的是收集符合条件的组,创建一个FirstPassGroupingCollector送入search接口即可。在此处使用CachingCollector对其cache的话,可以节省一次查询:         TermFirstPassGroupingCollector c1 = new TermFirstPassGroupingCollector("catalog", ...
开发笔记 开发笔记·2024-08-27

什么是Webhooks?

Webhook是一种基于HTTP的回调函数,可在2个应用编程接口(API)之间实现轻量级的事件驱动通信。...
开发笔记 开发笔记·2024-08-27

springboot配置properties

springboot配置properties时,属性值是中文乱码情况处理方式方法...
开发笔记 开发笔记·2024-08-27

linux系统centos下yum升级php5,php7,php8

linux系统centos7下yum升级php5.3,php5.4,php5.5,php5.6,php7.0,php7.1,php7.2,php7.3,php7.4,php8.0,php8.1,php8.2,php8.3版本yumupdate#更新现有的软件包yumupgrade#升级所有的软件包yuminstallyum-utils#安装yum-utils工具,可以显示可用yum源yuminstallepel-release#安装epel-release源,可以获取额外的软件包yuminstallhttps://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpmyuminstallhttps://mirrors.aliyun.com/remi/enterprise/remi-release-8.rpmphp-v#查看当前系统中PHP版本号rpm-Uvhhttp://rpms.remirepo.net/enterprise/remi-release-7.rpm#添加一个新的yum源yum-yremovephp*#卸载原有PHP#安...

百度在线编辑器ueditor的使用

1、引入ueditor文件包到项目中(官网下载,分为utf-8还有gbk等好多版本,自己看着下)2、把ueditor引入到jsp页面中,可参考百度提供的示例<scripttype="text/javascript"charset="utf-8"src="${basePath}js/ueditor/ueditor.config.js"></script><scripttype="text/javascript"charset="utf-8"src="${basePath}js/ueditor/ueditor.all.min.js"></script><!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败--><!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文--><scripttype="text/javascript"charset="utf-8"src="${basePath}js/ueditor/lang/zh...

C++ 中using 与 typedef

using关键字在C++中由来已久,使用得也比较多,现代C++进一步扩展了其应用范围,目前using可以用在以下场景中:命名空间声明命名空间成员声明类成员声明类继承构造类型别名与模板别名其中的4,5是现代C++对using关键字应用范围的扩展,5是用来替代typedef的。代码示例 :#include#includetemplateclassMagicType{public:Tdark;Umagic;};templateusingTrueDarkMagic=MagicType;//usingtemplatealiasdeclarationintmain(void){//case1:namespacedeclarationusingnamespacestd::filesystem;//case2:namespacememberdeclarationusingstd::cout,std::endl;//case3,4:classmemberdeclaration,inheritedconstructorstructB{B():x_{0}{};B(inty):B(){y_=y;};...
开发笔记 开发笔记·2024-08-27

vscode中python的问题和解决办法

安装好vscode后,汉字有个黄框框起来,不好看,解决办法:鼠标放上去,可以看到有“xxx不是基本ASCII字符”的提示信息,点击后面“调整设置”的选项。在弹出的选项中,选择“禁用批注中字符的突出显示”即可。...
首页上一页...7891011...下一页尾页