以下是一个应该询问用户问题的功能,用户输入的内容应该保存到文本文件中。
这是一个应该接受1 int
,4 strings
和DateTime
的结构。这是我的功能到目前为止看起来像但它显然不起作用。控制台正在显示问题,但未保存到文本文件中。
static void AddNew(CustomerStruct[] _NewCustomer)
{
Console.Clear();
using (StreamWriter sw = new StreamWriter(@"..\..\..\Files\Customer.txt", true))
{
Console.Write("\n\n Enter Customer Number: ");
sw.WriteLine(_NewCustomer[RecCount].CustomerNo);
Console.Write("\n\n Enter Customer Surname: ");
sw.WriteLine(_NewCustomer[RecCount].Surname);
Console.Write("\n\n Enter Customer Forname: ");
sw.WriteLine(_NewCustomer[RecCount].Forename);
Console.Write("\n\n Enter Customer Street address: ");
sw.WriteLine(_NewCustomer[RecCount].Street);
Console.Write("\n\n Enter Customer Town: ");
sw.WriteLine(_NewCustomer[RecCount].Town);
Console.Write("\n\n Enter Customer DOB: ");
sw.WriteLine(_NewCustomer[RecCount].DOB);
RecCount++;
}
Console.ReadLine();
}
答案 0 :(得分:1)
如果您喜欢快捷方式
static void AddNew(CustomerStruct[] _NewCustomer)
{
Console.Clear();
using (StreamWriter sw = new StreamWriter(@"..\..\..\Files\Customer.txt", true))
{
Console.Write("\n\n Enter Customer Number: ");
sw.WriteLine(_NewCustomer[RecCount].CustomerNo=Console.ReadLine());
Console.Write("\n\n Enter Customer Surname: ");
sw.WriteLine(_NewCustomer[RecCount].Surname=Console.ReadLine());
Console.Write("\n\n Enter Customer Forname: ");
sw.WriteLine(_NewCustomer[RecCount].Forename=Console.ReadLine());
Console.Write("\n\n Enter Customer Street address: ");
sw.WriteLine(_NewCustomer[RecCount].Street=Console.ReadLine());
Console.Write("\n\n Enter Customer Town: ");
sw.WriteLine(_NewCustomer[RecCount].Town=Console.ReadLine());
Console.Write("\n\n Enter Customer DOB: ");
sw.WriteLine(_NewCustomer[RecCount].DOB=Console.ReadLine());
RecCount++;
}
Console.ReadLine();
}
答案 1 :(得分:0)
正如您在评论中提到的,您只需要文件中来自Console的数据。因此,这是对“如何从控制台读取数据并将其放入文件?”的答案。
您想从控制台读取数据,然后将其写入流:
public static void ReadNewCustomerFromConsole()
{
var pathToYourFile = @"..\..\..\Files\Customer.txt";
using (var writer = new StreamWriter(pathToYourFile , true))
{
Console.Clear();
// Write a message in Console
Console.WriteLine("Enter Customer Number: ");
// Read user input from Console
var customerNumber = Console.ReadLine();
// Write user input to file
writer.WriteLine(customerNumber);
// Now read Customer Surname
Console.WriteLine("Enter Customer Surname:");
var customerSurname = Console.ReadLine();
writer.WriteLine(customerSurname);
// And so on for the other data you need ...
}
}
请注意,我使用的是Console.WriteLine()
,而不是\n
。
另外,我建议将您的方法重命名为ReadNewCustomerFromConsole()
,如果您不想用读取信息填充它,则不要在其中传递struct
数组(如果你这样做,我建议使用class
代替struct
)。