在国际化软件开发团队中,由于使用各种桌面系统和语言环境的差异经常导致编辑文件的乱码。
这里问题通常由三个问题导致:
1.UTF-8编码
如果你用gbk编码存储中文资源文件,试想你的法国同事怎么知道用什么编码正确读你的文件呢?
解决方案:项目所有ascii文件都采用utf-8编码.
2.TAB
TAB作为排版中的间隔经常被采用,只是有一点大家不要忽略,同样的TAB符在不同的编辑器中的显示的宽度是不一样的。
你在Eclipse编辑得好好的格式,用EditPlus打开看到的可能是乱乱的。
解决方案:用一定数量的Space替换TAB,很多编辑器提供这种转换,当你键入TAB可以自动插入指定数量的空格。
3.回车换行符
如果你使你的文件采用linux回车换行符,那么如果你用Windows Notepad打开时将会看到
所有的文字都挤在一行,而且有很多小方块块。
解决方案是:项目约定采用一种换行符,如果不作此约定,你必须使用对各种操作系统的换行符都支持得很好的编辑器。
不知道您是否多花一点点时间全面了解你用的编辑器的设定呢?
我这里想说说java开发过程中常用的全面支持这些问题的编辑器EditPlusV2.31 /UltraEit13.00+1/Eclipse.
这里特别注明了EditPlus/UltraEdit的版本,是因为他们的早期版本对这些问题并不能很好地支持
* Eclipse TextEditor
1).Windows/Unix format, UTF-8编码
2).使用Space替代Tab符?
上面仅仅是针对Eclipse基本的Editor设置。对于Java/HTML/Ant等扩展编辑器,你还不得不单独去设定
* Preference:
1). For Java: sets java code style in eclipse
windows->preferences->java->Code style->Formatter
add a new profile , for more detail, test it in eclipse please
2). For Ant: sets build.xml in eclipse
windows->preferences->Ant>Editor->Formatter
uncheck [Use tab character instead of spaces] option.
3). For Html:
windows->preferences->Web and XML->HTML Files->HTML Source
select "Indent using tabs" and set space =2
4). For XML:
windows->preferences->Web and XML->XML Files->XML Source
select "Indent using tabs" and set space =2
5). For Properties
3). 如何配置jsp,properties等文件默认使用UTF-8编码创建或者阅读?
(Eclipse3.2+) Windows->General->Content Types下选择指定的扩展名,然后说明相应的编码,然后Update.
4). 转换存在文件的回车换行格式
毕竟不是专业编辑器,好像没有这个功能
*. UltraEdit
1). 如何写一个UTF-8,Unix格式的文件?
新建一个文本文件,存盘的时候会让你选择:"换行符"和"格式",分别选择UTF-8,UNIX即可。
2). 如何将一个已经存在的文件转换成UTF-8,UNIX格式。
如果是修改一个已经存在的文件,则选择File->Conversions->DOS to Unix和ASICC to UTF-8,
然后按照上面的存盘方式即可。
3). 如何去除UltraEdit默认检测文件格式是否为Dos格式?
这个设置可以在菜单[Advanced->Configuration->文件处理]页上修改。
4). 如何设置UltraEdit使用Space替代Tab符
首选项设置:选择菜单[Advanced->Configuration->Edit->自动换行/制表符设置]页,选中[Use Space in place of Tab]
转换当前文件设置:执行菜单项[格式->转换制表符为空格]
*. EditPlus常用文件格式设置选项
1). 如何写一个UTF-8,Unix格式的文件?
在菜单[工具->参数->文件]页可以设定新建文件的"格式"和"换行符",新建一个文本文件,存盘的时候也会让你
选择"格式", 可以更改为任何你想要得其他编码。
3). 如何去除EditPlus默认检测文件格式是否为Dos格式?
这个设置可以在菜单[工具->参数->文件]页上修改。
4). 如何设置EditPlus使用Space替代Tab符
首选项设置为:菜单[工具->参数->文件->设置与语法]页,点击[制表符/缩进]按钮即可设置
转换当前文件设置:选中当前文件的所有文字,单击鼠标右键,执行菜单项[将制表符转换为空格]
如果想要更改"换行符",可以在执行菜单项[文档->文件格式]
这里问题通常由三个问题导致:
1.UTF-8编码
如果你用gbk编码存储中文资源文件,试想你的法国同事怎么知道用什么编码正确读你的文件呢?
解决方案:项目所有ascii文件都采用utf-8编码.
2.TAB
TAB作为排版中的间隔经常被采用,只是有一点大家不要忽略,同样的TAB符在不同的编辑器中的显示的宽度是不一样的。
你在Eclipse编辑得好好的格式,用EditPlus打开看到的可能是乱乱的。
解决方案:用一定数量的Space替换TAB,很多编辑器提供这种转换,当你键入TAB可以自动插入指定数量的空格。
3.回车换行符
如果你使你的文件采用linux回车换行符,那么如果你用Windows Notepad打开时将会看到
所有的文字都挤在一行,而且有很多小方块块。
解决方案是:项目约定采用一种换行符,如果不作此约定,你必须使用对各种操作系统的换行符都支持得很好的编辑器。
不知道您是否多花一点点时间全面了解你用的编辑器的设定呢?
我这里想说说java开发过程中常用的全面支持这些问题的编辑器EditPlusV2.31 /UltraEit13.00+1/Eclipse.
这里特别注明了EditPlus/UltraEdit的版本,是因为他们的早期版本对这些问题并不能很好地支持
* Eclipse TextEditor
1).Windows/Unix format, UTF-8编码
![](http://koda.javaeye.com/upload/picture/pic/5485/2c374ec3-8708-4a07-8fe5-59ba20b17642.jpg)
2).使用Space替代Tab符?
![](http://koda.javaeye.com/upload/picture/pic/5484/b153207d-5fba-4eb8-9fa8-2da2eb11f859.jpg)
上面仅仅是针对Eclipse基本的Editor设置。对于Java/HTML/Ant等扩展编辑器,你还不得不单独去设定
* Preference:
1). For Java: sets java code style in eclipse
windows->preferences->java->Code style->Formatter
add a new profile , for more detail, test it in eclipse please
2). For Ant: sets build.xml in eclipse
windows->preferences->Ant>Editor->Formatter
uncheck [Use tab character instead of spaces] option.
3). For Html:
windows->preferences->Web and XML->HTML Files->HTML Source
select "Indent using tabs" and set space =2
4). For XML:
windows->preferences->Web and XML->XML Files->XML Source
select "Indent using tabs" and set space =2
5). For Properties
3). 如何配置jsp,properties等文件默认使用UTF-8编码创建或者阅读?
(Eclipse3.2+) Windows->General->Content Types下选择指定的扩展名,然后说明相应的编码,然后Update.
4). 转换存在文件的回车换行格式
毕竟不是专业编辑器,好像没有这个功能
*. UltraEdit
1). 如何写一个UTF-8,Unix格式的文件?
新建一个文本文件,存盘的时候会让你选择:"换行符"和"格式",分别选择UTF-8,UNIX即可。
2). 如何将一个已经存在的文件转换成UTF-8,UNIX格式。
如果是修改一个已经存在的文件,则选择File->Conversions->DOS to Unix和ASICC to UTF-8,
然后按照上面的存盘方式即可。
3). 如何去除UltraEdit默认检测文件格式是否为Dos格式?
这个设置可以在菜单[Advanced->Configuration->文件处理]页上修改。
4). 如何设置UltraEdit使用Space替代Tab符
首选项设置:选择菜单[Advanced->Configuration->Edit->自动换行/制表符设置]页,选中[Use Space in place of Tab]
转换当前文件设置:执行菜单项[格式->转换制表符为空格]
*. EditPlus常用文件格式设置选项
1). 如何写一个UTF-8,Unix格式的文件?
在菜单[工具->参数->文件]页可以设定新建文件的"格式"和"换行符",新建一个文本文件,存盘的时候也会让你
选择"格式", 可以更改为任何你想要得其他编码。
![](http://koda.javaeye.com/upload/picture/pic/5486/53bd81b6-6ee9-437f-b188-c374587d0df5.jpg)
3). 如何去除EditPlus默认检测文件格式是否为Dos格式?
这个设置可以在菜单[工具->参数->文件]页上修改。
4). 如何设置EditPlus使用Space替代Tab符
首选项设置为:菜单[工具->参数->文件->设置与语法]页,点击[制表符/缩进]按钮即可设置
转换当前文件设置:选中当前文件的所有文字,单击鼠标右键,执行菜单项[将制表符转换为空格]
如果想要更改"换行符",可以在执行菜单项[文档->文件格式]