【问题标题】:Check document for types of questions and answers检查文档以了解问题和答案的类型
【发布时间】:2016-04-02 13:09:44
【问题描述】:

我正在为我的计算课程创建一个应用程序,教师上传一个 .txt 文件,其中包含学生问题和每个问题的答案。

在文件中,每个问题都以一个符号开头,表示问题类型(例如 & 表示多项选择),我应该如何检查不同的问题?

我正在考虑使用 streamreader.readline() 读取每一行,然后检查字符串的位置 0,但有没有更有效的方法来做到这一点?

这是问题文档的外观,如果有更多问题;

&选择题
~正确答案
- 不正确的答案
- 不正确的答案
- 错误答案

?文本框回答问题
~正确答案

【问题讨论】:

  • String.StartsWith 会是更具描述性的检查方式,但它不会在内部发挥作用。
  • File.ReadAllLines 一次性读取所有文件并将其放入数组中。您仍然需要检查所有行的内容类型。所以从完整的案例列表开始!!
  • 没有'ReadAllLines'?
  • 是的,有。查看此 MSDN 页面。 msdn.microsoft.com/en-us/library/…
  • 你能添加一个这样的txt文件的(小)例子吗?是否有更有效的方法取决于输入的实际格式。

标签: c#


【解决方案1】:

有了这样一个基本的布局,你唯一的选择就是遍历文档中的所有行。

string[] documentText = File.ReadAllLines()

foreach(string line in documentText)
{
    // Skip empty lines
    if(line == string.Empty)
        continue;

    // Check the first character
    switch(line[0])
    {
        case '~': // Correct answer, skip
            break;
        case '-': // Wrong answer, skip
            break;
        case '&': // Multiple choice
            // Handle multiple choice here
            break;
        case '?': // Textbox queston
            // Handle textbox questions here
            break;
    }
}

【讨论】:

  • 使用该方法我将无法将问题及其答案存储在一起
  • 在您处理选择题和文本框问题的地方,您可以阅读并存储以下行,直到遇到空行。
猜你喜欢
  • 2011-03-15
  • 1970-01-01
  • 1970-01-01
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-26
相关资源
最近更新 更多