[color=green]昨天由于某些原因需要把一个java的项目从windows搬迁到linux进行开发,由于当时在windows上用eclipse建立的项目,建立时没有设置编码,因此项目使用了windows默认的GB2312编码,所以在所有的java源代码中输入的中文内容都时GB2312的内容,当搬到Linux下后默认采用了UTF-8的编码方式,所以看见的源代码中的中文内容就成了乱码,当然如果把linux的默认编码切换成GB2312或者给eclipse提供GB2312的支持也是可以的,只是与linux的使用习惯不太融合。于是便有了题目中的需求。
这里采用如下的一个组合命令来完成这个操作,命令如下:
touch iconv.tmp && find . -iname "*.java" -exec iconv -f gbk -t utf-8 '{}' -o iconv.tmp \; -exec mv iconv.tmp '{}' \;
这条命令能够将当前目录及其子目录中的所有扩展名为java的文本文件进行转码。其思路时通过find对当前目录中的java文件进行列举,然后通过touch产生一个临时文件,使用iconv进行转码,将转码后的内容输出到临时文件,最后使用mv进行文件的移动,并且将移动后的文件名字设为原始文件的名字,这样原始文件就别覆盖了。于是转码工作完成了。
这个笔记值得一记,^_^
[/color]
[color=olive]↑↑↑↑↑
受领教了,O(∩_∩)O~我也遇到过同样问题
[/color]
[color=red]转自:[/color]
[url]http://student.csdn.net/space.php?uid=106337&do=blog&id=49415[/url]
这里采用如下的一个组合命令来完成这个操作,命令如下:
touch iconv.tmp && find . -iname "*.java" -exec iconv -f gbk -t utf-8 '{}' -o iconv.tmp \; -exec mv iconv.tmp '{}' \;
这条命令能够将当前目录及其子目录中的所有扩展名为java的文本文件进行转码。其思路时通过find对当前目录中的java文件进行列举,然后通过touch产生一个临时文件,使用iconv进行转码,将转码后的内容输出到临时文件,最后使用mv进行文件的移动,并且将移动后的文件名字设为原始文件的名字,这样原始文件就别覆盖了。于是转码工作完成了。
这个笔记值得一记,^_^
[/color]
[color=olive]↑↑↑↑↑
受领教了,O(∩_∩)O~我也遇到过同样问题
[/color]
[color=red]转自:[/color]
[url]http://student.csdn.net/space.php?uid=106337&do=blog&id=49415[/url]