FindBugs 规则整理:Internationalization
DM_DEFAULT_ENCODING
- 翻译
Found a call to a method which will perform a byte to String (or String to byte) conversion, and will assume that the default platform encoding is suitable. This will cause the application behaviour to vary between platforms. Use an alternative API and specify a charset name or Charset object explicitly.
某方法将字节转换为字符串,并且假定默认的平台编码是合适的,这会导致程序在不同平台上存在异常情况,请使用指定的字节编码进行转码 - 原因
在进行字符串转换时没有指定特定编码 - 解决方案
添加Charset.defaultCharset()
DM_CONVERT_CASE
Consider using Locale parameterized version of invoked method
使用平台默认的编码格式对字符串进行大小写转换,这可能导致国际字符的转换不当。使用以下方式对字符进行转换String.toUpperCase( Locale l )
String.toLowerCase( Locale l )
其他文章(持续更新)
FindBugs:简介与使用
FindBugs 规则整理:Bad Practice
FindBugs 规则整理:Style & Dodgy
FindBugs 规则整理:Malicious Code Vulnerability
FindBugs 规则整理:Multithreaded Correctness
FindBugs 规则整理:Security & Experimental
FindBugs 规则整理:Performance
FindBugs 规则整理:CORRECTNESS
引用
整合以下文章过程中发现部分存在翻译错误,已做修正,同时感谢以下文章作者
FindBugs规则整理
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 gezilinLL!
评论