还是C#的新手,尽我最大努力解决问题,但我已经发现了一些MSDN代码中的错误。今天,我在http://msdn.microsoft.com/en-us/library/c1sez4sc(v=vs.110).aspx尝试了示例代码,但无法让它工作。
我的问题是,我究竟在哪里指定目录路径?
我尝试在
之后插入string path = "c:\\test";
public static void Main(string[] args)
{
但它不起作用。
有人可以帮帮我吗?
答案 0 :(得分:3)
链接的示例正在利用命令行参数来获取其输入(这就是填充args
数组的内容)。这意味着你运行这样的程序:
MySampleApp.exe“C:\ Test”
设置path
变量不起任何作用,因为该变量是在下一行中创建并限定为foreach的。如果有的话,您需要重新分配args
变量。
由于您可能不熟悉C#,因此请快速了解范围。 “范围”是变量存在的区域。无论何时创建变量,都可以访问其范围及其下方的任何变量。当编译器查找变量时,它会选择最深匹配。
范围由{}
制作,所以
void Main(string[] args)
{ //New scope here (function scope)
string path = "C:\Test"; //Creates variable at function scope
foreach (string path in args) //Declare a new variable called path, the
//foreach semantic scopes it to the next block
{
... //Any reference to "path" here will reference the foreach
//iteration variable, NOT the function scope variable
}
希望这有助于解释为什么您的代码没有按照您的想法执行操作!