我有一个像6348725的数字,显示为String,但我想只显示带有String.Format的最后6位数(348725)。有没有办法做到这一点? 我知道,有子串函数(或带有%的Int计算(VB中的Mod)),但我想通过TextBox中的用户输入使用FormatString。
答案 0 :(得分:2)
我不明白为什么你需要String.Format
,但你可以像使用它一样使用它;
string s = "6348725";
TextBox1.Text = s.Substring(s.Length - 6)); // Textbox will be 348725
Okey,我只想在没有Substring
的情况下展示脏方式;
string s = "6348725";
var array = new List<char>();
if (s.Length > 6)
{
for (int i = s.Length - 6; i < s.Length; i++)
{
array.Add(s[i]);
}
}
Console.WriteLine(string.Join("", array)); // 348725
答案 1 :(得分:0)
一般情况下,你可以像SonerGönül所说的那样做。
string s = "6348725";
TextBox1.Text = string.Format("Your number: {0}", s.Substring(s.Length-6)
答案 2 :(得分:0)
如果您需要String.Format的完整功能并可以替换您的String.Format方法,请查看SmartFormat.NET:https://github.com/scottrippey/SmartFormat.NET
它声称与String.Format参数兼容,虽然它没有你需要的功能,但它可以很容易地修改以修剪和填充。 (参见Extensions / DefaultFormatter.cs第63至84行)