2

我的 Visual Studio 2008 中有 ac# 项目,该项目在构建时会在临时目录中输出一堆文件以供其他程序使用,即 JsTestDriver、JsCoverage 等(都与 Unix 相关)。

麻烦的是,每次生成文件时,它们似乎都包含奇怪的回车/换行符,这会扰乱接下来使用它们的程序。

我目前正在做的是手动创建一个记事本文件,将其重命名为不同的名称,然后复制并粘贴生成文件的全部内容(并保存)以解决此问题。当然,这很乏味而且不是我喜欢做的事情(最终我希望整个过程自动化)。

所以我的问题是:如何让 Visual Studio 输出正确/正确的 CR/LF,这样我就不再需要通过手动过程了?

如果以上内容太模糊,我很乐意澄清。提前致谢。

4

1 回答 1

1

是的,目前有点太模糊了 - 您应该提供:

  • 有关如何写出文件的更多详细信息
  • 关于之后文件中的确切内容的更多详细信息。使用十六进制编辑器找出答案。

改变行尾的最简单方法可能是在代码中明确说明它。例如,而不是:

output.WriteLine(foo);

output.Write(foo);
// Here LineTerminator would be a constant - or you could make
// it a variable somewhere
output.Write(LineTerminator);

...可能将其封装在您自己的类中以使其更容易(这样您就可以拥有自己的WriteLine方法来做正确的事情,也许)。

编辑:我一直假设这是您自己的代码写出文件。如果不是这种情况,最简单的解决方案可能是找到或编写一个工具来转换文件,并将其作为后期构建步骤。我确信存在这样的工具(我认为不久前有一个名为 dos2unix 的工具),但编写自己的工具可能就像找到一个完全符合你要求的工具一样容易。

于 2010-01-04T07:07:50.353 回答