有没有一种写这段代码的方法不那么草率?以及如何在最后部分只接受8位数字.需要收集数据并将其附加到文件中


int valg = Convert.ToInt32(Console.ReadLine());
if(valg == 1)
{
Console.WriteLine(" first name: "); 
string fnavn = Console.ReadLine();
Console.WriteLine("--------------------");
Console.WriteLine(" last name: "); 
string enavn = Console.ReadLine();
Console.WriteLine("--------------------");
Console.WriteLine(" postcode"); 
int postnummer = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(" 8 digit phone number: "); 

}
Console.ReadKey();

}
}

}

我知道有更好的方法来做一些事情,但我是根据我学到的东西来做的,但有点停了下来。当询问号码时,我只想接受8位数的号码,并且只有在我的文本文件中还没有使用该号码的情况下才能接受。有人知道我该怎么做吗?

电话号码可以包含分隔符,例如

(555)123-45-788
+7 555-67-98-999
12-34-56(add. 6)

等等。因此,我建议阅读字符串,然后在检查数量的同时提取数字:

string phoneNumber = "";
do {
phoneNumber = string.Concat(Console
.ReadLine()
.Where(c => c >= '0' && c <= '9')); 
}
while (phoneNumber.Length != 8);

最新更新