Monodevelop:嵌入式资源行结束CRLF转换为LF?

时间:2014-07-10 17:39:54

标签: c# linux mono monodevelop

我有一个不完全是文本的资源。它是一个包含一些文本和一些ansi控制代码的文件。在我的程序中,我将其作为二进制文件进行处理。但是,我发现当我使用System.Resources.ResourceManager.GetObject()作为byte []加载它时,所有CRLF都转换为LF。这不是我想要的。我想知道它是在编译时还是运行时发生的。

同样的项目在Windows和OS X上的Xamarin上运行正常。没有转换发生。它只发生在Linux上。而且我确定磁盘上的文件确实包含CRLF。我根据ResourceManager加载的byte []的大小检查了文件大小。

任何想法如何防止这种情况发生?感谢。

1 个答案:

答案 0 :(得分:0)

此行为取决于设置选项 - >文本编辑器 - >常规 - >行结束对话:

您可能将此设置设置为“始终转换行结尾”,并且您可能希望“保持行结束”或“始终要求转换”。

这也可以连接到您的GIT设置,在结账时将所有行结尾转换为LF。有关更多信息,请参阅“git config core.eol”和“git config core.autocrlf”。