【问题标题】:how to read from a text file and store in a separate array C# forms如何从文本文件中读取并存储在单独的数组 C# 表单中
【发布时间】:2012-10-11 10:44:44
【问题描述】:

我很难找到一段可以成功读取文件并将信息存储在单独数组中的代码。

有人建议

var lines = File.ReadAllLines("peter_testresults.txt"); 

在过去的问题中,但“var”未被识别。

代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.IO;

    namespace WindowsFormsApplication4
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            //return a pass/fail
            //return number of correct answers
            //return number of incorrect answers
            //return index figures of incorrect values

    correctAnswers ={B,D,A,A,C,A,B,A,C,D,B,C,D,A,D,C,C,B,D,A} 


    private string determinePassOrFail (); //return a pass/fail


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

        var c = correctAnswers.Where((x, i) => x.Equals(lines[i])).Count();





     private int numberCorrectAnswers(); //return number of correct answers
        {

        }


    private int numberIncorrectAnswers(); //return number of incorrect answers

    {

    }

    private string questionsIncorrectAnswers(); //return index figures of incorrect
  values

    {

    }





    }
            }

【问题讨论】:

  • 您使用的是什么版本的 .Net?
  • 您使用的是哪个版本的 .net?
  • string[] lines = File.ReadAllLines("peter_testresults.txt"); 可以代替var lines = File.ReadAllLines("peter_testresults.txt"); 工作吗?

标签: c# arrays forms


【解决方案1】:

如果您不能使用 var (implicitly typed local variables) 则表明您使用的是 C# 2 编译器(例如 VS2005),因此几乎可以肯定是 .NET 2。(我假设您是 没有卡在 C# 1...)

或者,您可以尝试将其用作字段:

class Foo
{
    var lines = File.ReadAllLines("...");
}

这是行不通的,因为字段不能被隐式键入 - 但我认为在字段初始化程序中执行该 IO 无论如何都是一个坏主意...

这应该仍然有效:

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

File.ReadAllLines 最初是在 .NET 2 中引入的。

顺便说一句,我强烈建议您尝试升级到更现代的 C# 版本...

【讨论】:

  • 目前在 Visual Studio 2012 上运行。行会变成“存储数组”吗?
  • @KerryG:如果您使用的是 VS 2012,那么您需要向我们提供有关“无法识别 var”的更多信息。一个简短但完整的程序(包括确切的错误消息)会很有用。不清楚您所说的“存储数组”是什么意思,但lines 是一个字符串数组变量,其内容将是文件加载时的行。 (更改数组的内容不会更改文件,反之亦然。)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-10
相关资源
最近更新 更多