编程
zdkdchao
这个作者很懒,什么都没留下…
展开
-
代码-检测文件的编码
需求 产品经理要求上传文件到服务器,但是文件没有模板,文件的编码格式不定,因此不能通过指定的编码格式解析文件,否则会出现乱码。 文件编码识别 (1)UTF-8 BOM编码的文件,前3个字节转换成10进制数后分别是:-17、-69、-65。 (2)UTF-16BE BOM编码的文件,前2个字节转换成10进制数后分别是:-2、-1。 (3)UTF-16LE BOM编码的文件,前2个字节转换成10进制数后分别是:-1、-2。 因此,这三种编码格式的文件检测起来比较简单,只需要拿到文件的前三个字节,然后根据上面的规原创 2020-09-28 11:41:27 · 915 阅读 · 0 评论 -
代码-布隆过滤器
作用 用来判断海量数据中是否存在指定值。 原理 将容器中的所有值求hashcode然后根据hashcode找,类似于hashmap,但不同的是这里只比较hash值,没有hash值相同之后的进一步精确匹配。 所以出现hash碰撞时,不能确定是否真的存在,此时可以使用不同的hash算法对数组中元素设置多个值,然后对每个值进行匹配。所以只要算法够多,误判几率就越低。 应用场景 Hbase就使用布隆过滤器来找rowkey,也会有误判的情况,本来没有,但返回有,此时无非就是遍历一个hfile而已,白搜了一个文件。可以原创 2020-10-07 20:37:37 · 425 阅读 · 0 评论 -
编码
不同编码数字和字母都以ASC码表示,只有中文会有问题。 字符数不管中文还是数字字母都占1个。但字节数不同: iso-8859-1 不能显示中文,里面的中文都以?显示,占1个字节 gbk一个全角占2个字节 utf8一个全角占3个字节 ...原创 2020-08-22 08:28:26 · 87 阅读 · 0 评论