2

我知道这已经回答了好几次了。但我问的是 C#。而java有一些。C# 还有一个,但它让我无处可去。所以请不要评价不好,因为我有这个原因。谢谢你。

我的最终目标是在我的应用程序中具有设置功能。我希望所有这些设置都保存到一个文本文件中。当应用程序打开时,它会自动读取该文件并调整我表单上的控件。

我不确定从哪里开始,但我想知道是否有类似的东西

String readLine(File file, int lineNumber)

先感谢您。

我已经保存了一个文件,并且正在打开一个文件。但我在那里只保存了一个设置。这是第一行。但是,如果我想添加更多要保存的控件,而不是为每个选项创建一个新文件,我想在该文件中放置几行,并且每一行都有自己的控件,它会改变。

那么,如何读取文本文件的特定行?

再次感谢。

4

3 回答 3

3

原则上,必须读取文本文件的每一行以定位特定行(如果需要,可以在该行停止),因为每个文本行的长度可能不同,因此您不能只计算文件中的偏移量然后到那里。

如果这真的是一个配置文件(可能不是很大,你可以使用

string[] lines = File.ReadAllLines(myPath);

http://msdn.microsoft.com/en-us/library/s2tte0y1.aspx

这样,文件的所有行都被读入lines,您可以访问单个行,例如

string line = lines[2];

如果您真的只想读取特定的行(请记住,如果您在应用程序中随着时间的推移读取多行,这将非常低效,因为您会从文件的开头重新读取),您将不得不编写自己的辅助程序。

于 2012-07-21T16:53:09.570 回答
2

如果您想要设置功能,请使用默认值,不要自己滚动。您只会在解析和升级以及找到保存它的位置时遇到更多问题,以便当用户在 UAC 或非管理员帐户下运行时可以对其进行修改

于 2012-07-21T16:52:03.593 回答
2

除非所有行的长度完全相同,否则您不能只跳到文件中的某个行号。如果您需要大多数选项,只需使用以下命令将文件作为行数组读取System.IO.File.ReadAllLines

string[] lines = File.ReadAllLines("myfile.txt");

然后你可以像往常一样访问每一行,比如lines[1]第二行。

此外,如果您不需要使用其他任何内容修改这些设置,只需使用内置设置即可。他们为您处理一切。

于 2012-07-21T16:52:21.377 回答