【问题标题】:How can I achieve to not only read one line from the txt file but also all the lines?我怎样才能不仅从 txt 文件中读取一行,而且还读取所有行?
【发布时间】:2019-10-10 21:54:14
【问题描述】:

我是一名初级程序员。大约两周前我开始学习 c#,现在我正在编写一个简单的登录/注册程序,但这对我来说有点难。我的问题是:有这个 adat1= olvas.ReadLine(); 代码,我认为这是只读文本中的一行。如何实现读取所有行,然后选择我们写入控制台的用户名?在解决方案之后,我们将能够创建新用户。 谢谢大家的帮助!

我的源代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Threading;

namespace Gyak
{
    class Program
    {
        static void Main(string[] args)
        {
            bool helyes = false;
            do {
            Console.Clear();
            Console.WriteLine("1 = Login\n2 = Registration");
            int valasz = int.Parse(Console.ReadLine());
            if (valasz == 1)
            {
                StreamReader olvas = new StreamReader(@"D:\k\Gyakorlás 2\UserName.txt", Encoding.Default);
                while (!olvas.EndOfStream)
                {
                    string adat1;
                    helyes = true;
                    Console.Clear();
                    Console.WriteLine("Login");
                    Console.WriteLine("UserName: ");
                    Console.Write("Password: ");
                    Console.SetCursorPosition(10, 1);
                    string valasz1 = Console.ReadLine();
                    adat1 = olvas.ReadLine();
                    Console.SetCursorPosition(10, 2);
                    string valasz2 = Console.ReadLine();
                    if (adat1.StartsWith(valasz1))
                    {
                        string[] keresett_adat = adat1.Split(':');
                        string keresett_eredmény = keresett_adat[1];
                        if (valasz2 == keresett_eredmény)
                        {
                            Console.WriteLine("Login Succeeded");
                            Console.ReadLine();
                        }
                        else
                        {
                            Console.WriteLine("Access Denied!\nTry again!");
                            Console.ReadLine();
                        }
                    }
                }
                }

                        else if (valasz == 2)
            {
                StreamWriter iras = new StreamWriter(@"D:\k\Gyakorlás 2\UserName.txt", true, Encoding.Default);
                helyes = true;
                Console.Clear();
                Console.WriteLine("Registration");
                Console.WriteLine("UserName: ");
                Console.Write("Password: ");
                Console.SetCursorPosition(10, 1);
                string valasz3 = Console.ReadLine();
                Console.SetCursorPosition(10, 2);
                string valasz4 = Console.ReadLine();
                iras.WriteLine( "\n" + valasz3 + ":" + valasz4);
                iras.Close();
            }
            else
            {
                helyes = false;
                Console.WriteLine("Incorrect!");
                Thread.Sleep(2000);
            }
            }while(helyes != true);
        }
    }
}

【问题讨论】:

标签: c# authentication split text-files streamreader


【解决方案1】:

您可以使用File.ReadAllTextFile.ReadAllLines

【讨论】:

    猜你喜欢
    • 2023-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    相关资源
    最近更新 更多