C# 用12位数字分析识别号
我必须分析12位数字。所以我被困在了第七号和第八号之间。我想如果数字是40(第7位是4,第8位是0)给我“ex.London”,如果是45给我“ex.NY” 代码:C# 用12位数字分析识别号,c#,C#,我必须分析12位数字。所以我被困在了第七号和第八号之间。我想如果数字是40(第7位是4,第8位是0)给我“ex.London”,如果是45给我“ex.NY” 代码: [WebMethod] public string ID(string number) { int fullInt = Int32.Parse(number); string City1= number.Substring(0, 2); string City1
[WebMethod]
public string ID(string number)
{
int fullInt = Int32.Parse(number);
string City1= number.Substring(0, 2);
string City1_S = "Date of birth: " + City1;
string City2 = number.Substring(2,2);
string City2_S = "Month: " + City2;
string City3 = number.Substring(4, 3);
string City3_S = "Year: 1" + City3;
string City4 = number.Substring(7, 2).Contains("40").ToString();
string City4_S = "City: London";
string[] Array= new string[3];
Array[0] = City1_S.ToString();
Array[1] = City2_S.ToString();
Array[2] = City3_S.ToString();
Array[3] = City4_S.ToString();
return Array.ToString();
}
从数字到
ex.*
的映射是如何工作的?在我们能够帮助您之前,请添加更多详细信息。由于City4\u S是一个字符串,因此无需再次对其调用ToString()。您还需要将数组声明为字符串[4]。目前您只为3个元素分配了足够的空间。string City4=number.Substring(7,2).Contains(“40”)。ToString()将把布尔结果转换为字符串(“true”或“false”)。故意?@PetarStojkovski是第一行,int-fullInt=Int32.Parse(number)代码>,需要吗Int32.Parse
将对12位数字抛出异常(除非前导数字为0
)。如果您需要12位整数,可以使用long
(Int64
)。是的,您是对的@JeppeStigNielsen,这是继续我的代码的问题,在If-else语句中我遇到了问题,现在也可以了,谢谢。
[WebMethod]
public string ID(string number)
{
int fullInt = Int32.Parse(number);// if (Regex.IsMatch(number, @"\D")) throw new ArgumentException();
string City1_S = "Date of birth: " + number.Substring(0, 2);
string City2_S = "Month: " + number.Substring(2,2);
string City3_S = "Year: 1" + number.Substring(4, 3);
string City4_S = "";
var digitStr = number.Substring(7, 2);
switch (digitStr)
{
case "40":
City4_S = "City: London";
break;
case "45":
City4_S = "City: NY";
break;
}
string[] Array = new [] { City1_S, City2_S, City3_S, City4_S };
return Array.ToString();//something wrong =)
//return string.Join(" ", Array);
//return Array[0] + " " + Array[1] + " " + Array[2] + " " + Array[3];
}