0
我現在有有一兩句,看起來像這樣的文本文件的文件更換相同的字符串多次:與不同的輸入在C#
Hello. Your name is <name> and the username you have chosen is <username>.
Your password is <password>. Your friend's username is <username>
and their password is <password>.
我首先要做的是詢問用戶以下幾個問題:
public string questions(string sentences)
{
Console.Write("Enter Your Name: ");
string name = Console.ReadLine();
Console.Write("Enter Your Username: ");
string userName= Console.ReadLine();
Console.Write("Enter Your Password: ");
string password= Console.ReadLine();
string textFile = File.ReadAllText(sentences);
textFile = textFile.Replace("<name>", name);
textFile = textFile.Replace("<username>", userName);
textFile = textFile.Replace("<password>", password);
File.WriteAllText(sentences, textFile);
return textFile;
}
當用戶輸入他們的名字,是因爲只有一個<name>
,但是,當涉及到的用戶名和密碼是沒有問題的,這是一個問題。例如,當用戶輸入用戶名時,它會替換文件中的所有內容,當我只想替換第一個<username>
時,它會顯示<username>
。我希望這個程序要做的是讀取文件,每次遇到<name>
,<password>
或<username>
提示用戶輸入他們的名稱,密碼或用戶名,並只替換該佔位符,而不是所有具有相似名稱的佔位符。
有沒有一種方法可以編輯我的當前代碼來實現這個目標?我考慮過在<name1>
或<username1>
之類的文本文件中編號的東西,但這隻適用於這個特定的文本文件。如果文本文件包含未知數量的用戶名或密碼會怎麼樣?
你能逐行讀取文件中的行? – Mairaj
@MairajAhmad是的,文件可以逐行閱讀。它不需要一次讀取整個文本文件。 – joanne72205
嗯,你爲什麼要發送朋友的密碼?這聽起來像個壞主意。如果你正確地哈希密碼,你甚至不應該這樣做...... – user1429080