C#计划。将数组转换为字符串时遇到问题

时间:2016-12-06 00:42:23

标签: c# arrays string

好的,所以我正努力创建一个“简单”的程序来获取答案文件。我尝试在代码中添加一个密钥,然后使用StreamReader将该密钥与上传的文件进行比较。我收到的第一个错误是#CS0622。它似乎没有认识到这些价值观。

我要做的是将上传的文件与答案密钥进行比较,如果“人”正确回答了足够的问题,将其显示为“通过”,如果不是“失败” 。并且还显示正确答案的数量,错误的数量以及个人错误的数量。

所以,让我们将它应用到我已编写的代码中,我将非常感谢有关如何纠正和修复此代码的任何帮助。如果我需要回答任何我可能错过的问题,请随时问:

    public Form1()
    {
        InitializeComponent();
        string testkey = { 'B', 'D', 'A', 'A', 'C', 'A', 'B', 'B', 'C', 'D', 'B', 'C', 'D', 'A', 'D', 'C', 'C', 'B', 'D', 'A' };

        const int Size = 20;
        string[] answers = new string[Size];

        Int index = 0;

        StreamReader inputFile;
        inputFile = File.OpenText("Response.txt");

        while (index < numbers.Length && !inputFile.EndOfStream)
        {
            numbers[index] = inputFile.ReadLine();
            index++;
        }
        inputFile.Close();                 
    }

    void gradeButton_Click(object sender, EventArgs e)
    {
        //Clicking will grade Response.txt file in bin against testkey

    }

    class Int
    {
        public static implicit operator Int(int v)
        {
            throw new NotImplementedException();
        }
    }
}

2 个答案:

答案 0 :(得分:1)

String已经是char的数组,但这并不意味着您可以自由地将char插入string变量(我没有说你可以“T)。
您可以通过String testkey = "ABC...";声明字符串,并使用索引访问每个元素,即:testkey[0]是“A”。

答案 1 :(得分:0)

你的问题是&#39;字符串testkey = {&#39; B&#39;,&#39; D&#39;,...&#39;语法错了。 字符串是包含(内部)字符数组的单个不可变对象。 似乎是在尝试创建一个字符数组,但是尝试创建一个字符串。

string testkey =&#34; abcde&#34 ;;已验证 char [] testkey = {&#39; a&#39;,&#39; b&#39;,&#39; c&#39;}有效。

你正在做的是混合两者(无效!)。

祝你好运!