Tag: tostring

如何格式化小数而不尾随零

我刚才知道小数点会以某种方式记住存储一个数字需要多少trailaing零。 换句话说:它会记住分数的大小。 例如: 123M.ToString() ==> resuls in: 123 123.00M.ToString() ==> resuls in: 123.00 123.450M.ToString() ==> resuls in: 123.450 我正在寻找一个格式化字符串或另一个技巧来摆脱那些“不需要的”尾随零,但保持有效数字。 所以: 123M.ToString() ==> resuls in: 123 123.00M.ToString() ==> resuls in: 123 123.450M.ToString() ==> resuls in: 123.45 删除新字符串末尾的零对我来说不是一个真正的选择,因为那时我必须找出字符串是否包含一个分数,如果是,还必须删除可选的’。’。 或’,’取决于文化等。

StringBuilder.ToString()抛出OutOfMemoryException

我有一个长度为“132370292”的StringBuilder ,当我尝试使用ToString()方法获取字符串时,它会抛出OutOfMemoryException 。 StringBuilder SB = new StringBuilder(); for(int i =0; i<=5000; i++) { SB.Append("Some Junk Data for testing. My Actual Data is created from different sources by Appending to the String Builder."); } try { string str = SB.ToString(); // Throws OOM mostly Console.WriteLine("String Created Successfully"); } catch(OutOfMemoryException ex) { StreamWriter sw = new […]

c#十进制为货币字符串

要显示我们所做的货币: ToString(“0.##”) 对于值5.00 ,输出为: 5 对于值5.98 ,输出为: 5.98 对于值5.90 ,输出为: 5.9 我需要第三种情况才能得到2个小数点,例如: 5.90 如果不影响其他结果我怎么能这样做?

C#Enum.ToString(),名称完整

我正在寻找一个解决方案来获取枚举的完整字符串。 例: Public Enum Color { Red = 1, Blue = 2 } Color color = Color.Red; // This will always get “Red” but I need “Color.Red” string colorString = color.ToString(); // I know that this is what I need: colorString = Color.Red.ToString(); 那么有解决方案吗?

在c#中格式化Int时如何强制符号

我想格式化整数i( -100 < i < 100 ),这样: -99格式为“-99” 9种格式为“+09” -1格式为“-01” 0格式为“+00” i.ToString(“00”) 接近但是当int为正时不添加+号。 如果没有明确区分i >= 0和i < 0有没有办法做到这一点?

最有效的Dictionary .ToString()格式化?

将Dictionary转换为格式化字符串的最有效方法是什么。 例如: 我的方法: public string DictToString(Dictionary items, string format){ format = String.IsNullOrEmpty(format) ? “{0}='{1}’ ” : format; string itemString = “”; foreach(var item in items){ itemString = itemString + String.Format(format,item.Key,item.Value); } return itemString; } 有更好/更简洁/更有效的方式吗? 注意:字典最多有10个项目,如果存在另一个类似的“键值对”对象类型,我就不会使用它 另外,既然我无论如何都会返回字符串,那么通用版本会是什么样子?

C#int ToString格式在2个char int上?

如何在整数上使用ToString方法来显示2-char int i = 1; i.ToString() -> “01” instead of “1” 谢谢。

如何在不包含指数表示法的情况下获得浮点值

在C#中,是否可以在float上执行ToString并获取值而不使用指数? 例如,请考虑以下事项: float dummy; dummy = 0.000006F; Console.WriteLine(dummy.ToString()); 这给出了输出 6E-06 但是,我的意思是 0.000006 我能找到的最接近的是使用“F”限定符,但是我需要指定小数位数,否则值将被舍入。 实际上是否有一种自动执行此操作的方法,或者我需要加载一些时髦的逻辑来修剪零或计算出所需的小数位数。 谢谢; 理查德莫斯

不能隐式地将类型’X’转换为’string’ – 何时以及如何判断它“不能”?

现在我和Guid一起Guid 。 我当然记得,在某些地方的代码中,这种隐式转换是有效的,而在其他地方则没有。 直到现在我都没有看到这种模式。 编译器如何决定它何时不能? 我的意思是,类型方法Guid.ToString()存在,不需要在需要这种转换时调用它吗? 有人可以告诉我在什么情况下这个转换是自动完成的,当我必须显式调用myInstance.ToString() ?

对混合数字和字符串进行排序

我有一个字符串列表,可以包含一个字母或一个int的字符串表示(最多2位数)。 它们需要按字母顺序排序,或者(当它实际上是一个int时)对它所代表的数值进行排序。 例: IList input = new List() {“a”, 1.ToString(), 2.ToString(), “b”, 10.ToString()}; input.OrderBy(s=>s) // 1 // 10 // 2 // a // b 我想要的是 // 1 // 2 // 10 // a // b 我有一些想法涉及通过尝试解析它来格式化它,然后如果它是一个成功的tryparse用我自己的自定义stringformatter格式化它使它有前面的零。 我希望能有更简单,更高效的东西。 编辑 我最终制作了一个IComparer,我把它放在我的Utils库中供以后使用。 当我在它的时候,我也在混合物中投掷了双打。 public class MixedNumbersAndStringsComparer : IComparer { public int Compare(string x, string y) { double xVal, […]