\ 015&的区别\ 012和\ r& \ n

时间:2011-03-27 02:17:44

标签: c# .net c++ encoding

我有一个旧的C ++程序,它正在编写文件并将它们FTP到IBM大型机。

此程序正在转换为C#。

转移似乎没问题但主机查看器没有正确显示文件。

\015&之间有什么区别? \012\r& \n? C ++正在使用数字而C#正在使用\r\n

这可能是事情看起来不正确的原因吗?

文件以ASCII格式传输,因此不确定为什么它看起来像垃圾!

2 个答案:

答案 0 :(得分:7)

\015是一个八进制文字,C#不支持 C#将其解析为\0(字符代码为零),后跟两个字符15

答案 1 :(得分:6)

\r\n\015\012之间没有区别。

在C(++)中,\0XX转义序列表示char的文字八进制表示。如果您将这些值打印为数字,则应该会看到\r等同于13,而\n等同于10

八进制是基数为8,当转换为基数为10时,015等同于13012等于10。我希望能够解决问题。