0

对于我正在做的项目,我需要手动创建一个 .net 项目。我目前正在使用 aStreamWriter创建 .sln、.csproj 和 base(暂时为空)类。我也在生成 AssemblyInfo.cs 类。当您创建一个空的 Windows 类库项目时,我已经完全复制了 VS.Net 创建的文件和文件夹结构。

出于某种原因,当我尝试打开 .sln 文件时,什么也没有发生。我可以很好地打开 .csproj 文件,但项目无法编译。我没有收到任何错误消息,只是没有任何反应。我已经检查了我正在创建的所有文件与 Visual Studio 使用 Beyond Compare 创建的文件,它们完全相同,除了项目名称和 GUID。

有谁知道 Visual Studio 在创建项目时是否在幕后做某事?还有什么我可能会丢失的吗?

4

2 回答 2

0

我会检查您文件的文本编码。我相信 .csproj 文件被编码为 UTF-8,但我可能是错的。

于 2008-12-17T02:24:49.287 回答
0

戴夫马克尔有正确的答案。

我正在使用以下代码来创建我的文件:

StreamWriter sw = File.CreateText(FileName);

这正确创建了文件,但没有正确设置编码。我把它改成这样:

FileStream fs = File.Create(FileName);
StreamWriter sw = new StreamWriter(fs, Encoding.UTF8);

而且效果很好。

于 2008-12-17T04:40:20.293 回答