我想将一个字符串格式化为小数,但小数后面包含一些零。我如何格式化它以使那些无意义的0消失?string.Format("{0}",1100M);string.Format("{0}",1100.1M);string.Format("{0}",1100.100M);string.Format("{0}",1100.1000M);显示:11001100.11100.1001100.1000但我希望它是:11001100.11100.11100.1作为引用,这里有其他问题,这些问题基本上与此重复,感谢此处给出的答案,我发现了这些问题:Parsedecimalandfilterextra0on
我想以人类可读的格式格式化一些命令执行时间,例如:3->3ms1100->1s100ms62000->1m2setc..考虑天、时、分、秒……是否可以使用C#? 最佳答案 您可以使用TimeSpan类,如下所示:TimeSpant=TimeSpan.FromMilliseconds(ms);stringanswer=string.Format("{0:D2}h:{1:D2}m:{2:D2}s:{3:D3}ms",t.Hours,t.Minutes,t.Seconds,t.Milliseconds);它与我刚刚发现的这个线程非常相似:
我想以人类可读的格式格式化一些命令执行时间,例如:3->3ms1100->1s100ms62000->1m2setc..考虑天、时、分、秒……是否可以使用C#? 最佳答案 您可以使用TimeSpan类,如下所示:TimeSpant=TimeSpan.FromMilliseconds(ms);stringanswer=string.Format("{0:D2}h:{1:D2}m:{2:D2}s:{3:D3}ms",t.Hours,t.Minutes,t.Seconds,t.Milliseconds);它与我刚刚发现的这个线程非常相似:
愚蠢的问题,我想格式化一个整数,使其以1000的分隔符(,)出现,但也没有小数位和前导0。到目前为止我的尝试是:String.Format("{0}{1}",5,5000);//55000String.Format("{0:n}{1:n}",5,5000);//5.005,000.00String.Format("{0:0,0}{1:0,0}",5,5000);//055,000我追求的输出是:55,000有什么明显我遗漏的吗? 最佳答案 这对我有用。String.Format("{0:#,0}{1:#,0}",5,5000);//
愚蠢的问题,我想格式化一个整数,使其以1000的分隔符(,)出现,但也没有小数位和前导0。到目前为止我的尝试是:String.Format("{0}{1}",5,5000);//55000String.Format("{0:n}{1:n}",5,5000);//5.005,000.00String.Format("{0:0,0}{1:0,0}",5,5000);//055,000我追求的输出是:55,000有什么明显我遗漏的吗? 最佳答案 这对我有用。String.Format("{0:#,0}{1:#,0}",5,5000);//
在命名空间MS.Internal中,有一个名为NamedObject的类。它有一个奇怪的代码块:publicoverridestringToString(){if(_name[0]!='{'){//lazilyadd{}aroundthename,toavoidallocatingastring//untilit'sactuallyneeded_name=String.Format(CultureInfo.InvariantCulture,"{{{0}}}",_name);}return_name;}我特别好奇这个评论://lazilyadd{}aroundthename,toavoi
在命名空间MS.Internal中,有一个名为NamedObject的类。它有一个奇怪的代码块:publicoverridestringToString(){if(_name[0]!='{'){//lazilyadd{}aroundthename,toavoidallocatingastring//untilit'sactuallyneeded_name=String.Format(CultureInfo.InvariantCulture,"{{{0}}}",_name);}return_name;}我特别好奇这个评论://lazilyadd{}aroundthename,toavoi
如果我运行这段代码:Console.WriteLine(String.Format("{0}",null));我得到一个ArgumentNullException但如果我运行这段代码:Stringstr=null;Console.WriteLine(String.Format("{0}",str));它运行得很好,输出是一个空字符串。现在这两部分看起来和我一样-它们都将空引用传递给String.Format()但行为不同。这里如何识别不同的行为? 最佳答案 只需反编译代码即可了解发生了什么。string.Format("{0}",n
如果我运行这段代码:Console.WriteLine(String.Format("{0}",null));我得到一个ArgumentNullException但如果我运行这段代码:Stringstr=null;Console.WriteLine(String.Format("{0}",str));它运行得很好,输出是一个空字符串。现在这两部分看起来和我一样-它们都将空引用传递给String.Format()但行为不同。这里如何识别不同的行为? 最佳答案 只需反编译代码即可了解发生了什么。string.Format("{0}",n
我不想这样做,而是想利用string.format()来完成相同的结果:if(myString.Length 最佳答案 如果您只是格式化一个数字,您可以只提供适当的customnumericformat直接将其设为3位字符串:myString=3.ToString("000");或者,也可以使用standardDformatstring:myString=3.ToString("D3"); 关于c#-将字符串格式化为3位数字,我们在StackOverflow上找到一个类似的问题: