这是我的代码分解:
fileName = string.Concat("C:", @"test.txt");
StreamWriter sw = new StreamWriter(fileName, false);
StringBuilder row = new StringBuilder();
row.AppendLine("Test");
sw.Write(row.ToString());
sw.Close();
此代码不生成文件,也不给出错误。如果我将第一行更改为filename = "test.txt";
,则程序将在与exe (bin/debug)相同的位置创建文件并将文本写入其中。我怎样才能让程序写入到exe所在路径之外的不同路径?
写在C:
以外的地方。Windows不允许非管理员用户写入C:驱动器的根目录,并且您的string.Concat
设置了一个尝试这样做的文件夹。将其更改到与驱动器根文件夹不同的文件夹中,应该可以正常工作。
Path.Combine
而不是string.Concat
来构建路径和文件名。它可以根据需要在适当的位置添加路径分隔符。