格式“12345678”改为“1234-5678”

时间:2011-09-23 08:39:32

标签: c# string format

如何将数字字符串“12345678”格式化为“1234-5678”。

string str = "12345678";

//I want to format it like below
res = "1234-5678";

由于

5 个答案:

答案 0 :(得分:2)

您可以使用string.Insert

string res = "12345678".Insert(4, "-");

参数是要插入的索引和要插入的字符串。

答案 1 :(得分:2)

如果您需要格式化数字,可以使用String.Format()方法:

int test = 12345678;
string res = String.Format("{0:####-####}", test); // res == "1234-5678"

答案 2 :(得分:1)

我如何理解您理想的格式是:在字符串中的前四个符号后插入连字符。如果是的话,那很简单:

res = str.Length> 4? string.Concat(str.Substring(0,4),“ - ”,str.Substring(4)):str;

如果您的格式是其他格式,请详细说明。

答案 3 :(得分:0)

您也可以像这样使用.Substring:

string str1 = str.Substring(0,4);
string str2 = str.Substring(4,4);
string res = str1 + "-" + str2;

答案 4 :(得分:0)

我使用Visual Basic Code 在C#上转换并不难。

    Dim str As String = "12345678"
    Dim num As Long = CLng(str)
    Dim strOut As String = Format(num, "####-####")