2

我是第一次启动 Visual C# (2010 Express),并且为 WindowsFormsApplication 创建了一个新项目。尚未编写任何代码,但我创建了一个按钮并将其放在 Form1 上。然后,我双击该按钮并被带到您编写按下/单击按钮时发生的情况的代码部分。

我想做的第一件事是从 LARGE 制表符分隔的文本文件 (30MB) 中读取数据。文本文件包含 7 个结构化数据列,如姓名、年龄、喜欢的颜色、动物等。文本格式没有什么棘手或花哨的。我正在使用下面的代码:

File.ReadLines(sourceFilePath)
.Select(line => line.Split('\t'))
.ToArray();

但我更基本的问题是如何建立和定义 File 和 sourceFilePath?使用上面的代码,我得到“当前上下文中不存在名称‘文件’。

4

3 回答 3

5

您需要将以下行添加到 C# 文件的顶部:

using System.IO;

这将允许使用 System.IO 命名空间中的 File 类。

至于定义sourceFilePath,这只是一个变量,您可以声明并设置为您需要的任何文件路径,例如

string sourceFilePath = @"c:\data\file.csv";

注意在字符串文字前使用@;这可以防止反斜杠被视为转义序列的开始。相反,您可以转义 bakslashes,例如

string sourceFilePath = "c:\\data\\file.csv";
于 2012-09-04T17:33:22.800 回答
1

如果要按制表键拆分,则可以尝试使用 ReadAllText 方法,然后使用 Split 方法,在其中定义分隔符(按制表符):

 string[] delimitedByTab = File.ReadAllText(@"file").Split('\t').ToArray();

并使用 System.IO;文件类的命名空间

于 2012-09-04T17:36:17.123 回答
0

File 类驻留在 System.IO 命名空间中。您可以通过以下方式在应用程序中利用它:

using System.IO;

至于定义 sourceFilePath 的内容,您将需要将值硬编码到固定位置,这并不总是可取的,或者设计一种机制让用户指定该路径,可能通过各种 CommonDialogs 之一可用的。对 CommonDialogs 的一些研究应该有助于推动您进一步开发项目。

于 2012-09-04T17:34:55.747 回答