我有一个记录到文件的C应用程序。
我安装了notepad ++的监视器插件以自动更新,类似于Linux上的'tail'。
我的应用程序在末尾用\ n \ r \ n写入行(例如fprintf(fp,“%s \ n \ r \ n”,“Test”);)
我得到类似的东西:
Line 1
Line 2
而不是
Line 1
Line 2
使用'查看 - >显示符号 - >显示行尾'查看(无论EOL转换)时,我看到:
Line 1[CR][LF]
[CR]
Line 2[CR][LF]
[CR]
好像它正在将\ n视为[CR] [LF],将\ r视为[CR],它正在添加另一条线。
有什么想法吗?
答案 0 :(得分:2)
我认为问题在您的描述中并不清楚,标题表明您对NPP有问题,但您的解释表明您的应用程序代码存在问题。
对于NPP: 您可以从文件中删除那些额外的新行。
for App: 如果你严格使用Windows O.S.然后使用'\ n'或者如果你正在使用其他O.S.然后首先找出该O.S.的新行字符。并应用它。
答案 1 :(得分:1)
尝试仅使用\ n。如果你使用\ r \ n它会导致只有一个换行符,那么windows会看到\ n作为一个新行而不是\ r \ n作为carret返回导致它破坏另一行。
另外,您可以查看this文章以获取更多信息。
答案 2 :(得分:0)
正如我几个月前所听到的那样,转义序列可能依赖于索引。
所以,在这种情况下\ n似乎涵盖了两者。
我会尝试转义序列。
但在此之前: 看看里面的fp ....也可能有一些序列。