Skip to content

Commit 66a2d9b

Browse files
committed
convert some file'encoding into utf8 from gbk
1 parent 7e87fe7 commit 66a2d9b

File tree

5 files changed

+92
-92
lines changed

5 files changed

+92
-92
lines changed

FindBugs详解.md

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
1-
## Find bugs误报告警的消除方法
2-
3-
### 背景介绍
1+
## Find bugs误报告警的消除方法
42

5-
在java工程中,Find bugs的静态检查能够帮助我们挖掘出代码可能存在的缺陷。在我实际使用的过程中,也确实发现了两处由于“缺少else分支”导致“引入未初始化对象”的错误。与之相对应的是,通过Find bugs也发现四处对象中使用静态成员导致Find bugs告警的情况。通过仔细阅读和分析代码逻辑,可以确认代码本身没有问题,这个是属于Find bugs误报的情况。既然我们打算使用Find bugs来做代码的静态检查,那么就有必要保持一个干净的代码环境,这里面没有任何的Find bugs告警。如果确定是代码问题,毫无疑问需要马上纠正。如果确认是Find bugs误报,也应该进行消除,以便后续的检查能够基于一个干净的环境,同样的误报不需要反复确认。Find bugs告警误报的消除非常容易,只需要在两个级别(类级别和方法进行)加上Find bugs的注解就可以消除。这里建议误报消除尽量在方法级别上进行,以控制误报消除的范围,最大限度放置将真正的代码问题也作为误报给隐藏掉了。
3+
### 背景介绍
64

7-
### 方法
5+
在java工程中,Find bugs的静态检查能够帮助我们挖掘出代码可能存在的缺陷。在我实际使用的过程中,也确实发现了两处由于“缺少else分支”导致“引入未初始化对象”的错误。与之相对应的是,通过Find bugs也发现四处对象中使用静态成员导致Find bugs告警的情况。通过仔细阅读和分析代码逻辑,可以确认代码本身没有问题,这个是属于Find bugs误报的情况。既然我们打算使用Find bugs来做代码的静态检查,那么就有必要保持一个干净的代码环境,这里面没有任何的Find bugs告警。如果确定是代码问题,毫无疑问需要马上纠正。如果确认是Find bugs误报,也应该进行消除,以便后续的检查能够基于一个干净的环境,同样的误报不需要反复确认。Find bugs告警误报的消除非常容易,只需要在两个级别(类级别和方法进行)加上Find bugs的注解就可以消除。这里建议误报消除尽量在方法级别上进行,以控制误报消除的范围,最大限度放置将真正的代码问题也作为误报给隐藏掉了。
86

9-
* 在工程添加注解依赖的jar包:使用Find bugs注解需要用到两个jar包,annotations.jar和jsr305.jar。在eclipse中装完Find bugs插件后,在eclipse目录下可以找到这两个jar包文件。
10-
* 添加注解:在疑问代码所在的类或者方法前面添加注解。其中,value的值就是前面提到的find bugs告警信息中的模式,因为value是一个数组,所以可以同时添加多个模式。justification的值是一句描述信息,你可以理解为是这条注解的注释,内容可以是任意的。
7+
### 方法
8+
9+
* 在工程添加注解依赖的jar包:使用Find bugs注解需要用到两个jar包,annotations.jar和jsr305.jar。在eclipse中装完Find bugs插件后,在eclipse目录下可以找到这两个jar包文件。
10+
* 添加注解:在疑问代码所在的类或者方法前面添加注解。其中,value的值就是前面提到的find bugs告警信息中的模式,因为value是一个数组,所以可以同时添加多个模式。justification的值是一句描述信息,你可以理解为是这条注解的注释,内容可以是任意的。
1111

1212
```java
1313
@edu.umd.cs.findbugs.annotations
1414
SuppressWarnings(value={"NM_CONFUSING"}, justification="remove findbugs")
1515
```
1616

1717

18-
* 重新运行Find bugs进行检查:添加完注解后,接下来应该重新运行find bugs工具进行检查,以确定误报已经被消除。
18+
* 重新运行Find bugs进行检查:添加完注解后,接下来应该重新运行find bugs工具进行检查,以确定误报已经被消除。
1919

2020
## MS: Field should be package protected (MS_PKGPROTECT)
2121

2222
A mutable static field could be changed by malicious code or by accident. The field could be made package protected to avoid this vulnerability.
2323

24-
我这样定义了多个数组,均使用了 public final static 修饰符:
24+
我这样定义了多个数组,均使用了 public final static 修饰符:
2525

2626
```java
2727
public final static double[][][] Y_MIN_SCOPE=
@@ -30,7 +30,7 @@ A mutable static field could be changed by malicious code or by accident. The fi
3030
{{0, 254}},
3131
{{0, 254}},
3232
{{0, 254}}
33-
33+
3434
};
3535
public final static double[] GRID_HEIGHT = {1,1,1,1};
3636

@@ -43,20 +43,20 @@ A mutable static field could be changed by malicious code or by accident. The fi
4343
};
4444
```
4545

46-
findbugs给的修改提示是:
46+
findbugs给的修改提示是:
4747

4848
```
49-
In LTE3DConstant
50-
Field LTE3DConstant.Y_MIN_SCOPE
51-
At LTE3DConstant.java:[line 53]
52-
Y_MIN_SCOPE should be package protected
53-
Bug Type: MS_PKGPROTECT
54-
Bug Category:MALICIOUS_CODE (Malicious code vulnerability)
55-
Source File:
49+
In LTE3DConstant
50+
Field LTE3DConstant.Y_MIN_SCOPE
51+
At LTE3DConstant.java:[line 53]
52+
Y_MIN_SCOPE should be package protected
53+
Bug Type: MS_PKGPROTECT
54+
Bug Category:MALICIOUS_CODE (Malicious code vulnerability)
55+
Source File:
5656
Line:53
5757
```
5858

59-
修改成这样就不报错了。
59+
修改成这样就不报错了。
6060

6161
```java
6262
protected final double[][][] Y_MIN_SCOPE=
@@ -65,8 +65,8 @@ findbugs
6565
{{0, 254}},
6666
{{0, 254}},
6767
{{0, 254}}
68-
68+
6969
};
7070
```
7171

72-
可能原因是因为其它地方没有使用到这个类的变量,所以最好将public改成protected,但是为什么要去掉static还是不理解。
72+
可能原因是因为其它地方没有使用到这个类的变量,所以最好将public改成protected,但是为什么要去掉static还是不理解。

Python学习之路.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
* Python for Windows Extensions: https://sourceforge.net/projects/pywin32/
1818
* Stani's Python Editor(SPE): https://sourceforge.net/projects/spe/
1919
* Ulipad: https://github.com/limodou/ulipad
20-
20+
2121
* Python Tools for Visual Studio: http://microsoft.github.io/PTVS/
2222
* Virtualenv: https://virtualenv.pypa.io/en/latest/index.html
2323
* Pillow: http://pillow.readthedocs.org/en/latest/index.html
@@ -26,12 +26,12 @@
2626
* SCons: A software construction tool: http://www.scons.org/
2727

2828
* http://effbot.org/
29-
* 啄木鸟Python社区: http://wiki.woodpecker.org.cn/moin/
29+
* 啄木鸟Python社区: http://wiki.woodpecker.org.cn/moin/
3030

31-
* 初探验证码识别:http://drops.wooyun.org/tips/4550
32-
* Python 程序员必知必会的开发者工具: http://www.oschina.net/news/48645/python-developer-tools?from=20140210
33-
* Python自动单元测试框架: http://www.ibm.com/developerworks/cn/linux/l-pyunit/
34-
* Python 3.0 抢“鲜”体验: http://blog.csdn.net/gzlaiyonghao/article/details/1772209
31+
* 初探验证码识别:http://drops.wooyun.org/tips/4550
32+
* Python 程序员必知必会的开发者工具: http://www.oschina.net/news/48645/python-developer-tools?from=20140210
33+
* Python自动单元测试框架: http://www.ibm.com/developerworks/cn/linux/l-pyunit/
34+
* Python 3.0 抢“鲜”体验: http://blog.csdn.net/gzlaiyonghao/article/details/1772209
3535
* Dive Into Python 3: http://getpython3.com/diveintopython3/
3636
* Swaroop C H: http://www.swaroopch.com/
3737
* JPype: http://www.ibm.com/developerworks/cn/opensource/os-cn-jpype/index.html

Windows学习之路.md

Lines changed: 48 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,107 +1,107 @@
1-
# 瘦身右键里的“发送到”
1+
# 瘦身右键里的“发送到”
22

3-
xp是在“C:\Documents and Settings\Administrator\SendTo”下,win7位置有所不同。当然了这些文件夹肯定是默认隐藏的,如果你看不到,别忘了先进文件夹选项显示隐藏文件和文件夹。我只保留了,“桌面快捷方式”一个,其余杀之!
3+
xp是在“C:\Documents and Settings\Administrator\SendTo”下,win7位置有所不同。当然了这些文件夹肯定是默认隐藏的,如果你看不到,别忘了先进文件夹选项显示隐藏文件和文件夹。我只保留了,“桌面快捷方式”一个,其余杀之!
44

5-
# 不修改权限,修改hosts和service文件
5+
# 不修改权限,修改hosts和service文件
66

7-
win7的用户权限管理比较严格,默认情况下你是无法直接修改hosts和service这样的文件,提示无权限。网上有很多教程,讲解如何获取管理员或文件权限,如果你只是想修改类似这样的文件,不用动那么大的干戈,一个小小的动作就行。复制hosts、service文件系统文件夹之外的其他地方,任意编辑器修改-》保存,再paste回去覆盖掉系统同名文件,done.
7+
win7的用户权限管理比较严格,默认情况下你是无法直接修改hosts和service这样的文件,提示无权限。网上有很多教程,讲解如何获取管理员或文件权限,如果你只是想修改类似这样的文件,不用动那么大的干戈,一个小小的动作就行。复制hosts、service文件系统文件夹之外的其他地方,任意编辑器修改-》保存,再paste回去覆盖掉系统同名文件,done.
88

99

1010

11-
# Windows/system32权限问题
11+
# Windows/system32权限问题
1212

13-
由于权限问题,无法修改其中的文件,可以右键取得管理员权限。
13+
由于权限问题,无法修改其中的文件,可以右键取得管理员权限。
1414

15-
# Windows 8如何删除服务
15+
# Windows 8如何删除服务
1616

17-
现在的流氓软件,越来越多把自己注册为一个服务。对于这些流氓软件,需要删除相关的exe文件,使它不能再运行,或者直接清除这个服务本身,使计算机重启的时候,它不会再启动。删除的办法有两个:
17+
现在的流氓软件,越来越多把自己注册为一个服务。对于这些流氓软件,需要删除相关的exe文件,使它不能再运行,或者直接清除这个服务本身,使计算机重启的时候,它不会再启动。删除的办法有两个:
1818

19-
1.用sc.exe这个Windows命令。开始--运行--cmd.exe,然后输入sc就可以看到了。使用办法很简单:sc delete "服务名" (如果服务名中间有空格,就需要前后加引号)。如 sc delete KSD2Service
19+
1.用sc.exe这个Windows命令。开始--运行--cmd.exe,然后输入sc就可以看到了。使用办法很简单:sc delete "服务名" (如果服务名中间有空格,就需要前后加引号)。如 sc delete KSD2Service
2020

21-
2.直接进行注册表编辑(不推荐)。打开注册表编辑器,找到下面的键值:
21+
2.直接进行注册表编辑(不推荐)。打开注册表编辑器,找到下面的键值:
2222

23-
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
23+
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
2424

25-
一般服务会以相同的名字在这里显示一个主健,直接删除相关的键值便可。
25+
一般服务会以相同的名字在这里显示一个主健,直接删除相关的键值便可。
2626

27-
注:
27+
注:
2828

29-
1.如果服务显示的是rundll32.exe,并且这个文件是位于system32目录下,那么就不能删除这个rundll32.exe文件,它是Windows系统的文件。这时只要清除相关的服务就可以了
29+
1.如果服务显示的是rundll32.exe,并且这个文件是位于system32目录下,那么就不能删除这个rundll32.exe文件,它是Windows系统的文件。这时只要清除相关的服务就可以了
3030

31-
2.如果一个服务删除了马上又自动建立了,说明后台有进程在监视、保护。需要先在进程管理器中杀掉相应的进程,或者启动后按F8,到安全模式下删除。
31+
2.如果一个服务删除了马上又自动建立了,说明后台有进程在监视、保护。需要先在进程管理器中杀掉相应的进程,或者启动后按F8,到安全模式下删除。
3232

33-
# 在windows的资源管理器当前路径打开一个命令行
33+
# 在windows的资源管理器当前路径打开一个命令行
3434

35-
快捷键Alt+D选中地址栏,然后直接敲cmd
35+
快捷键Alt+D选中地址栏,然后直接敲cmd
3636

37-
注:你还能在资源管理器的地址栏启动其他程序,比如写字板(notepad)。
37+
注:你还能在资源管理器的地址栏启动其他程序,比如写字板(notepad)。
3838

39-
或者:Shift加右键,选择在此处打开命令窗口
39+
或者:Shift加右键,选择在此处打开命令窗口
4040

4141

42-
# Powershell常用命令:
42+
# Powershell常用命令:
4343

44-
* 同时打开多个powershell窗口:Win+R+powershell 多次即可
45-
* 查看powershell命令帮助 help [cmd]:help Remove-Item
46-
* 删除文件夹:Remove-Item path –Recurse –Forse
44+
* 同时打开多个powershell窗口:Win+R+powershell 多次即可
45+
* 查看powershell命令帮助 help [cmd]:help Remove-Item
46+
* 删除文件夹:Remove-Item path –Recurse –Forse
4747

4848

49-
# 如何改变PowerShell启动的默认目录
49+
# 如何改变PowerShell启动的默认目录
5050

51-
为什么要修改PowerShell默认的启动目录, 如果你习惯操作一些特殊的命令行程序, 而又不习惯把它们放在默认的home路径下, 修改默认的启动位置, 可以让你在每次启动Powershell的时候不用执行切换目录的操作.
51+
为什么要修改PowerShell默认的启动目录, 如果你习惯操作一些特殊的命令行程序, 而又不习惯把它们放在默认的home路径下, 修改默认的启动位置, 可以让你在每次启动Powershell的时候不用执行切换目录的操作.
5252

53-
PowerShell的默认启动路径其实就是执行PowerShell时指定的默认工作目录. 你可以编辑PowerShell的快捷方式, 在启动位置中输入一个你希望的默认位置. 这样再执行PowerShell时, 它默认的启动路径就是新的位置了.
53+
PowerShell的默认启动路径其实就是执行PowerShell时指定的默认工作目录. 你可以编辑PowerShell的快捷方式, 在启动位置中输入一个你希望的默认位置. 这样再执行PowerShell时, 它默认的启动路径就是新的位置了.
5454

55-
除了这个方法, 你还可以通过修改特定的profile来实现这个操作, 简单的在profile中加入cd XXX即可.
55+
除了这个方法, 你还可以通过修改特定的profile来实现这个操作, 简单的在profile中加入cd XXX即可.
5656

57-
最后说一下$home这个变量, 它是 HOMEPATH 和 HOMEDRIVE两个环境变量组合成的. 这两个环境变量存储在注册表中. 这两个变量我不推荐修改, 因为不知道会产生哪些副作用...但是理论上修改这些变量可以修改用户的主目录位置.
57+
最后说一下$home这个变量, 它是 HOMEPATH 和 HOMEDRIVE两个环境变量组合成的. 这两个环境变量存储在注册表中. 这两个变量我不推荐修改, 因为不知道会产生哪些副作用...但是理论上修改这些变量可以修改用户的主目录位置.
5858

5959

6060

61-
# Beyond Compare对比.class文件
61+
# Beyond Compare对比.class文件
6262

63-
使用Beyond Compare扩展插件可以直接对比编译的.class文件,而不会显示一大堆乱码。
63+
使用Beyond Compare扩展插件可以直接对比编译的.class文件,而不会显示一大堆乱码。
6464

65-
* windows:http://www.scootersoftware.com/download.php?zz=kb_moreformats_win
66-
* linux:http://www.scootersoftware.com/download.php?zz=kb_moreformats_nix
65+
* windows:http://www.scootersoftware.com/download.php?zz=kb_moreformats_win
66+
* linux:http://www.scootersoftware.com/download.php?zz=kb_moreformats_nix
6767

68-
# 解决xshell中vim显示中文乱码的问题
68+
# 解决xshell中vim显示中文乱码的问题
6969

70-
打开一个用utf8编码的中文文件,在vim中,执行
70+
打开一个用utf8编码的中文文件,在vim中,执行
7171

7272
```vimscript
73-
set encoding=utf-8 termencoding=gbk fileencoding=utf-8后可正常显示中文咯。
73+
set encoding=utf-8 termencoding=gbk fileencoding=utf-8后可正常显示中文咯。
7474
```
7575

76-
* encoding是设置档案的当前编码
77-
* termencoding是用于vim屏幕的显示编码,由于xshell默认用于显示屏幕的编码是gbk,所以此处设置为gbk。同理,假设你修改了xshell的默认编码为utf-8,那么此处自然应该utf-8
78-
* fileencoding档案保存时的编码,此编码应和encoding保持一致,否则会弹出警告
76+
* encoding是设置档案的当前编码
77+
* termencoding是用于vim屏幕的显示编码,由于xshell默认用于显示屏幕的编码是gbk,所以此处设置为gbk。同理,假设你修改了xshell的默认编码为utf-8,那么此处自然应该utf-8
78+
* fileencoding档案保存时的编码,此编码应和encoding保持一致,否则会弹出警告
7979

80-
至于xshell,打开file->Properties,点击Terminal节点,修改Terminal Type为linux(键盘映射模式,默认为xtrem,此种模式下对于vim小键盘输入数字会出现乱字符号),修改Encoding为uft-8(一般情况下linux系统采用此编码,可用locale命令查看自己系统的默认编码,修改为一致的就行)。
80+
至于xshell,打开file->Properties,点击Terminal节点,修改Terminal Type为linux(键盘映射模式,默认为xtrem,此种模式下对于vim小键盘输入数字会出现乱字符号),修改Encoding为uft-8(一般情况下linux系统采用此编码,可用locale命令查看自己系统的默认编码,修改为一致的就行)。
8181

82-
同理,也可以修改xftp的编码为utf-8以正常显示中文。
82+
同理,也可以修改xftp的编码为utf-8以正常显示中文。
8383

8484

8585
# VirtualBox
8686

87-
## Windows 8.1+VirtualBox较新版本打开虚拟机时报错
87+
## Windows 8.1+VirtualBox较新版本打开虚拟机时报错
8888

89-
报错信息:
89+
报错信息:
9090
```
9191
Unable to load R3 module D:\Program Files\Oracle\VirtualBox/VBoxDD.dll
9292
(VBoxDD):GetLastError=1790
9393
(VERR_UNRESOLVED_ERROR)
9494
```
95-
解决办法是在Windows/system32下:
95+
解决办法是在Windows/system32下:
9696

97-
* themeui.dll.old.tweakcube替换themeui.dll
98-
* uxtheme.dll.old.tweakcube替换uxtheme.dll
97+
* themeui.dll.old.tweakcube替换themeui.dll
98+
* uxtheme.dll.old.tweakcube替换uxtheme.dll
9999

100-
如果是Windows 7中遇到类似问题,参考:
100+
如果是Windows 7中遇到类似问题,参考:
101101
http://jingyan.baidu.com/article/ab69b270bb7b2a2ca6189f6d.html
102102

103103

104-
# 文章
104+
# 文章
105105

106-
* Powershell 错误记录:详细错误:http://www.pstips.net/powershell-error-record-details.html
106+
* Powershell 错误记录:详细错误:http://www.pstips.net/powershell-error-record-details.html
107107

astyle使用说明.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ http://astyle.sourceforge.net/astyle.html
2727
## 加入到VS2008,VS2005
2828

2929
+ 工具——>外部工具——>添加
30-
+ 标题:astyle
30+
+ 标题:astyle
3131
+ 命令:AStyle.exe (填好astyle.exe的路径)
3232
+ 参数:--style=allman -N $(ItemDir)$(ItemFileName)$(ItemExt)
3333
+ 初始目录:$(TargetDir)
@@ -37,7 +37,7 @@ http://astyle.sourceforge.net/astyle.html
3737
## 加入到VS6
3838

3939
+ Tools——>Customize——>Tools
40-
+ 标题:astyle
40+
+ 标题:astyle
4141
+ 命令:AStyle.exe (填好astyle.exe的路径)
4242
+ 参数:--style=ansi -s4 --suffix=.orig $(FileName)$(FileExt)
4343
+ 初始目录:$(FileDir)
@@ -66,15 +66,15 @@ http://astyle.sourceforge.net/astyle.html
6666

6767
## 控制台目录批处理(astyle.bat)
6868

69-
```Bash
70-
REM 批量将本目录中的所有C++文件用Astyle进行代码美化操作
71-
REM 设置Astyle命令位置和参数
72-
@echo off
73-
set astyle="astyle.exe"
74-
REM 循环遍历目录
75-
for /r . %%a in (*.cpp;*.c) do %astyle% --style=ansi --pad=oper --unpad=paren -s4 -n "%%a"
76-
for /r . %%a in (*.hpp;*.h) do %astyle% --style=ansi --pad=oper --unpad=paren -s4 -n "%%a"
77-
REM 删除所有的astyle生成文件
78-
for /r . %%a in (*.orig) do del "%%a"
79-
pause
69+
```bat
70+
REM 批量将本目录中的所有C++文件用Astyle进行代码美化操作
71+
REM 设置Astyle命令位置和参数
72+
@echo off
73+
set astyle="astyle.exe"
74+
REM 循环遍历目录
75+
for /r . %%a in (*.cpp;*.c) do %astyle% --style=ansi --pad=oper --unpad=paren -s4 -n "%%a"
76+
for /r . %%a in (*.hpp;*.h) do %astyle% --style=ansi --pad=oper --unpad=paren -s4 -n "%%a"
77+
REM 删除所有的astyle生成文件
78+
for /r . %%a in (*.orig) do del "%%a"
79+
pause
8080
```

markdown学习之路.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
* Markdown 语法说明 (简体中文版): http://wowubuntu.com/markdown/
1+
* Markdown 语法说明 (简体中文版): http://wowubuntu.com/markdown/
22
* Online Markdown Editor, DILLINGER: http://dillinger.io/
33
* Cmd Markdown: https://www.zybuluo.com/mdeditor
4-
* 马克飞象: https://maxiang.io/
5-
* 10款流行的Markdown编辑器,总有一款适合你: http://code.csdn.net/news/2819623
6-
* 求关于 Markdown 或类似标记语言的任何吐槽、建议、个人使用风格说明: http://cn.v2ex.com/t/102885
4+
* 马克飞象: https://maxiang.io/
5+
* 10款流行的Markdown编辑器,总有一款适合你: http://code.csdn.net/news/2819623
6+
* 求关于 Markdown 或类似标记语言的任何吐槽、建议、个人使用风格说明: http://cn.v2ex.com/t/102885
77
* Markdeep: http://casual-effects.com/markdeep/

0 commit comments

Comments
 (0)