需求是浏览器里直接将服务器上的图片文件(JPG,PNG,TIF)输出PDF, TIF还可能是多页的,这里需要把TIF合并,项目是用的Spring/SpringBoot 首先引入itextpdf依赖,编辑pom.xml,增加如下dependency <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.13.2<…
需求是浏览器里直接将服务器上的图片文件(JPG,PNG,TIF)输出PDF, TIF还可能是多页的,这里需要把TIF合并,项目是用的Spring/SpringBoot 首先引入itextpdf依赖,编辑pom.xml,增加如下dependency <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.13.2<…
有时候需要执行脚本的时候,需要模拟人为操作需要等待几秒钟后执行,但又不能是固定的等待时间,可以使用如下随机等待几秒钟: #!/bin/bash echo "开始随机等待 1-10 秒..." # 1-10秒内随机 sleep $[ ( $RANDOM % 10 ) + 1 ] echo "等待后继续"
分享自用的JS日期格式化和字符串解析成日期的工具方法 如何使用
现在手机号段比较多,简单点就判断是否以1开头的11位数字,如下: //简单点就看是否是1开头的数字吧 func isMobile(mobile:String?) -> Bool { if let trueMobile = mobile { var mobileReg = "^1\\d{10}$" var regextestmobile = NSPredicate(format: "SELF MATCHES %@",mobileReg) return regextestmobile.evaluateWithOb…
我自用的正则表达式判断Email的方法 比较简单,直接上方法 public static boolean isEmail(String email) { if (StringUtils.isEmpty(email)) return false; Pattern p = Pattern.compile("^[\\w-]+(?:\\.[\\w-]+)*@(?:[\\w-]+\\.)+[a-zA-Z]{2,7}$"); Matcher m = p.matcher(email); return m.matches(); }…
很多时候,我们写Shell脚本的时候,需要下载文件、根据是否下载到文件后(文件是否存在)来判断下一步的操作。 在Bash里,可以使用test来判断文件/文件夹是否存在,格式如下 test EXPRESSION [ EXPRESSION ] [[ EXPRESSION ]] 两个括号会比较常用,不过都可以试试 FILE=/opt/test.txt if [ -f "$FILE" ]; then echo "$FILE exists." fi #if else FILE=/opt/test.txt if [ -f "$…
SBM协议,映射网络驱动器,图形界面下,打开【此电脑】-映射网络驱动器-选择虚拟驱动器、输入文件夹(\\192.168.50.12\backup,根据实际情况修改),按照图示就可以了 不过有时候,我们需要在命令行下执行添加网络驱动器的命令,或者运行后移除网络驱动器。 下面给出示例,bat里,说明直接用注释用rem写了 rem 这是隐藏名称的共享 登录的是域里面的帐号 域是domain 用户名是zhangsan 密码是Password net use Y: \\192.168.50.12\backup$ /user:…
直接上工具方法 /** * 获取访问用的真实IP,无视nginx等反向代理软件 * @param request * @return ip地址 */ public static String getIpAddr(HttpServletRequest request) { String ip = request.getHeader("X-Real-IP"); if (!StringUtils.isEmpty(ip) && !"unknown".equalsIgnoreCase(ip)) { retur…
/** * 判断字符串中是否包含中文 * * @param str 待校验字符串 * @return 是否为中文 * @warn 不能校验是否为中文标点符号 */ public static boolean isContainsChinese(String str) { if (str == null) { return false; } Pattern p = Pattern.compile("[\u4e00-\u9fa5]"); Matcher m = p.matcher(str); return m.find…
比较简单,直接干货,说明写在工具方法的注释里了: # bytes 文件大小,单位:字节数bytes # precision 小数点后位数,可以是0 def readable_file_size(bytes, precision): for unit in ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB']: if abs(bytes) < 1024.0: return '%s %s' % (format(bytes, '.%df' % precision), uni…