文件类无法识别Exists或CreateText方法

时间:2014-02-27 12:35:16

标签: c# asp.net asp.net-mvc-4 file-io

与ASP.NET(4.5.1)MVC相关的问题4.我想创建一个文件并在该文件中写入一行。根据我的理解,这很容易,我只需要执行以下操作:

public static void Main() 
{
    string path = @"c:\temp\MyTest.txt";

    if (!File.Exists(path)) 
    {
        // Create a file to write to. 
        using (StreamWriter sw = File.CreateText(path)) 
        {
           sw.WriteLine("Hello");
           sw.WriteLine("And");
           sw.WriteLine("Welcome");
        }   
    }

    // Open the file to read from. 
    using (StreamReader sr = File.OpenText(path)) 
    {
        string s = "";

        while ((s = sr.ReadLine()) != null) 
        {
            Console.WriteLine(s);
        }
    }
}     

但是当我调用File类时它将无效。它不知道存在的方法,CreateText。 我不明白我做了导入System.IO。那么问题是什么?

更新

在导入System.IOSystem.Web.MVC的项目中找到解决方案。 解决方案是使用完整路径调用File类,如下所示:

if (!System.IO.File.Exists(path)) 
    {
        // Create a file to write to. 
        using (StreamWriter sw = System.IO.File.CreateText(path)) 
        {
           sw.WriteLine("Hello");
           sw.WriteLine("And");
           sw.WriteLine("Welcome");
        }   
    }

1 个答案:

答案 0 :(得分:2)

问题:我怀疑您的项目中有不同的类,名称为File。 所以它指的是File而不是System.IO.File

解决方案:我建议您使用完全限定的命名空间来访问File中的System.IO类,以避免出现歧义:

if(!System.IO.File.Exists("path"))
{


}