我是c#编程的初学者。我收到错误The name 'File' does not exist in the current context
。
问题必须在var v = File.ReadLines("dictionary.txt");
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication7
{
class Program
{
static void Main(string[] args)
{
if (args.Length > 0)
{
var v = File.ReadLines("dictionary.txt");
答案 0 :(得分:15)
只需将此using语句添加到文件顶部
即可using System.IO;
编译器只识别当前上下文中的命名空间中的类。您可以使用using
语句将命名空间添加到上下文中。您还可以使用完全限定的类型名称(例如System.IO.File
)来引用该类。
如果您使用的是Visual Studio,还可以将光标放在有问题的符号(File
)上,然后按 Shift + Alt + F10
答案 1 :(得分:4)
对于使用Visual Studio 2015的任何人,即使引用了System.IO,仍会发生此错误。问题是,默认情况下,Visual Studio 2015项目将同时针对dnx451和dnxcore50框架,而System.IO程序集似乎不适用于dnxcore50。
如果你查看project.json文件,你会看到一个"框架"部分。快速解决方法是注释掉" dnxcore50"条目,以便您只定位dnx451:
"dnxcore50": {
"dependencies": {
"System.Console": "4.0.0-beta-22816",
"System.Collections": "4.0.10-beta-22816",
"System.Linq": "4.0.0-beta-22816",
"System.Threading": "4.0.10-beta-22816",
"Microsoft.CSharp": "4.0.0-beta-22816"
}
}
答案 2 :(得分:2)
将using System.IO;
添加到您的使用部分。
File
类位于System.IO
命名空间。
或者(如果它是您的代码中唯一使用System.IO
中的某种类型的地方),您可以使用File
的完全限定名称,如:
var v = System.IO.File.ReadLines("dictionary.txt");
但是当您需要在代码中多次访问某个命名空间中的对象时,最好在使用中包含该命名空间。
答案 3 :(得分:1)
您需要在其他使用旁边添加System.IO
添加using System.IO
。
答案 4 :(得分:1)
添加使用声明:
using System.IO
答案 5 :(得分:0)
我在vs2017中工作.Net Core,我遇到了类似的问题。
要解决此问题,您应该更改目标框架并安装System.IO.FileSystem。
使用以下方法:
然后,要安装System.IO.FileSystem,请在程序包管理器控制台中运行以下命令
Install-Package System.IO.FileSystem -Version 4.3.0
答案 6 :(得分:0)
1。首先,在这里我们需要创建这样的对象。
OpenFileDialog ofd = new OpenFileDialog();
2。然后,您需要在代码顶部添加
using System.IO;
3。最后,您可以像这样更改代码
OpenFileDialog.Title -----> ofd.Title
OpenFileDialog.Filter -----> ofd.Filter