检查C#CSV文件是否为DOS-CSV
如何在C#程序中检查CSV文件是“DOS-CSV”文件还是“普通”CSV文件?换句话说,excel工作表是否导出为“DOS-CSV”。。一种启发式方法是检查文件中是否存在检查C#CSV文件是否为DOS-CSV,c#,encoding,csv,C#,Encoding,Csv,如何在C#程序中检查CSV文件是“DOS-CSV”文件还是“普通”CSV文件?换句话说,excel工作表是否导出为“DOS-CSV”。。一种启发式方法是检查文件中是否存在“\r\n”。我猜您的意思是想知道行尾是作为windows的cr lf(carridge返回字符和换行字符)还是作为unix的lf。我建议您下载记事本++它是免费的、开源的,并且有许多优点,例如(编辑下)行转换(灰色选项是当前检测到的格式)。您是指PC CSV文件和UNIX CSV文件或MAC CSV文件之间的区别吗?您能确切地
“\r\n”
。我猜您的意思是想知道行尾是作为windows的cr lf(carridge返回字符和换行字符)还是作为unix的lf。我建议您下载记事本++它是免费的、开源的,并且有许多优点,例如(编辑下)行转换(灰色选项是当前检测到的格式)。您是指PC CSV文件和UNIX CSV文件或MAC CSV文件之间的区别吗?您能确切地解释一下区别在哪里吗?只有换行?在这种情况下,标记无效。我猜您指的是编码上的差异(如果导出为Windows CSV,则特殊字符将使用Windows-1252代码页和437进行编码,用于DOS_CSV)。因此,在不知道编码的情况下,您需要做一些猜测工作。还有阅读——不是每个人都知道启发式的含义。清晰简单的英语始终是一个优势。这是一个程序员论坛,技术语言是标准。这是一个程序员论坛,许多用户生来不是说英语的。我不清楚你的答案如何比简单的备选答案对用户有利:“一种方法是检查…”。其他人显然会做出决定。我并没有投反对票,但我可以猜OP是在寻找一种通过C#进行编程检查的方法,所以你的答案并没有真正回答这个问题,谢谢。是的,我提供了一种快速的方法来检查和确认文件的编码。当然,由于代码是开源的,经过深思熟虑的测试和同行评审,如果没有更好的解决方案,它是可用的。