您的位置:首页 > 产品设计 > UI/UE

关于windows与unix之间文件格式转换问题。UE编辑器中(CR/LF)问题

2010-11-24 12:51 696 查看
问题描述:

对于我们来说在windows下编码的直观和操作简单方便,不用记大量的编辑命令,动动鼠标就OK了。 但是对于我们这些工作在Unix下

的开发者来说,我们习惯于在windows下编辑,然后同步到unix下。

也许你会发现当你把创建的文件以二进制的方式传到unix下,并打开,会在每行的最后多了一个^M字符。 文件小,我们可以手动删

除。 如果文件内容很多呢, 我想你一定不会选择这种方式。

为什么会出现这个字符? 我们比较熟悉的是windows下,在每一行都会有一个回车换行符(CR/LF)。但在unix下换行只有一个LF字

符(/n ascii码 10)。这个显示出来的字符,就是在windows下多了的回车符'/r'(ascii码 13)。

我习惯用UE编码,所以讲下在UE下的设置,解决上面出现的^M字符。

1. 人工清除法:

使用UE命令,去掉'/n'。当编辑完上传前,使用“格式”-》“转换回车符为换行”命令,手动转换。

优点:区别对待dos文件格式和unix文件。 缺点:效率低,麻烦每次都要转换,一不小心就杯具。 建议:可以偶尔为之

在unix下使用vi打开文件,使用以下命令可以一次性删除所有的^M字符:

:%s/^M//g

在unix下输入^M字符的快捷键:ctrl+v+m

2. 一劳永逸法:

UE默认下,每次打开Unix下的文件会询问是否转换为DOS格式。(每次都很烦的点否)。如果你和我一样,你可以打开菜单栏上的“高

级”-》“配置”-》“文件处理”-》“DOS/UNIX/MAC处理”。 将选项“新建文件的默认文件类型” 设为“UNIX”, “UNIX/MAC文件

检测/转换” 设置为“禁用”。其它默认。

效果:每次打开unix文件不会提示转换, 完全和unix兼容,新建的文件可以直接传到unix下,不用担心出现^M字符。

优点:高效,方便。 缺点:新建的文件在windows记事本编辑器下,是没有换行的, 少'/r' 回车符。

建议:经常用UE编辑Unix文件的人使用。

note:如果用UE打开了一个Unix格式的文件,编辑完保存后还是Unix格式的文件。UE默认情况是保存为输入文件的格式。

3. 使用svn上传DOS格式文件到Unix服务器时^M解决方法:

WINDOWS下

%USERPROFILE%/AppData/Roaming/Subversion/config,打开此文件。修改一下内容

enable-auto-props = yes

*.c = svn:eol-style=native

*.mk = svn:eol-style=native

*.cpp = svn:eol-style=native

*.h = svn:eol-style=native

*.dsp = svn:eol-style=CRLF

*.dsw = svn:eol-style=CRLF

*.sh = svn:eol-style=native;svn:executable

*.txt = svn:eol-style=native

*.png = svn:mime-type=image/png

*.jpg = svn:mime-type=image/jpeg

Makefile = svn:eol-style=native

只是将以上几行的注释去掉了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: