jjzjj

ToString

全部标签

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

我想格式化一个整数i(-100),这样:-99格式为“-99”9种格式为“+09”-1格式为“-01”0格式为“+00”i.ToString("00")接近但在int为正时不添加+号。有没有办法在不明确区分的情况下做到这一点i>=0和i? 最佳答案 试试这个:i.ToString("+00;-00;+00");当用分号(;)分隔时,第一部分将应用于正值,第二部分将应用于负值,第三部分将应用于零(0)。请注意,如果您希望零的格式与正数相同,则可以省略第三部分。如果您希望负数的格式与正数的格式相同,但希望零的格式不同,则也可以省略第二部

c# - 哪个是快速比较 : Convert. ToInt32(stringValue)==intValue 或 stringValue==intValue.ToString()

在开发我的应用程序时,我遇到了一些比较的东西:stringstr="12345";intj=12345;if(str==j.ToString()){//domylogic}我在想上面的东西也可以用:stringstr="12345";intj=12345;if(Convert.ToInt32(str)==j){//domylogic}所以我开发了一个示例代码来测试哪个性能更好variterationCount=1000000;varwatch=newStopwatch();watch.Start();stringstr="12345";intj=12345;for(vari=0;i第二

c# - DateTime ToString (“dd/MM/yyyy” ) 返回 dd.MM.yyyy

我也试过屏蔽格式字符串中的“/”符号,但效果不佳。我的最终目标是获取以“/”符号作为分隔符的日期。我想我可以使用DateTime.ToString(“dd/MM/yyyy”).Replace('.','/'),但这感觉有点过分。 最佳答案 日期/时间格式字符串中的/字符代表“无论格式提供程序的日期分隔符是什么”。由于您没有提供格式提供程序Thread.CurrentCulture被使用,并且在您的情况下,当前文化使用.作为日期分隔符。如果您想使用文字斜线,请将其放在单引号内:dateTime.ToString("dd'/'MM'/'

c# - 为什么 object.ToString() 存在?

IStringable接口(interface)不是更优雅、更整洁吗?谁需要返回给我们的这个Type.FullName对象?编辑:每个人都在问为什么我认为它更优雅..好吧,就像那样,对象将具有CompareTo方法,而不是IComparable,默认情况下会抛出异常或返回0。有些对象不能也不应该描述为字符串。对象同样可以返回string.Empty。Type.FullName只是一个任意选择..而对于Console.Write(object)等方法,我认为应该是:Write(IStringable)。但是,如果您将WriteLine用于除字符串以外的任何内容(或者它的ToString很

c# - 将枚举底层整数值转换为字符串

尝试获取作为字符串返回的枚举的基础整数值。尝试过return((int)MyEnumValue).ToString;但是失败了错误1​​无法将方法组“ToString”转换为非委托(delegate)类型“string”。您是否打算调用该方法? 最佳答案 少括号的选项是:returnMyEnumValue.ToString("d"); 关于c#-将枚举底层整数值转换为字符串,我们在StackOverflow上找到一个类似的问题: https://stackov

c# - 为什么有些方法对可空结构的空值起作用而有些方法不起作用?

开门见山:int?i=null;i.ToString();//happyi.GetType();//nothappy我得到一个veryrelatedquestion这实际上是关于为什么i.ToString()工作正常。编辑:刚发现这个极端情况是themostvotedoneinthisSOthread! 最佳答案 是因为ToString是虚拟的,而GetType不是。Nullable在CLR中具有特殊的装箱行为。当您调用GetType在可为空的情况下,它被装箱(请参阅MSDN,实际上任何struct都会发生这种情况)。但是,对于可空

c# - 为什么 TimeSpan.ToString() 需要转义分隔符?

您可以像这样为DateTime对象指定自定义格式:DateTime.Now.ToString("HH:mm:ss");//19:55:23但是当我尝试对TimeSpan对象使用相同的格式时,如下所示:DateTime.Now.TimeOfDay.ToString("HH:mm:ss");我收到“输入字符串的格式不正确。”异常。事实证明,解决方案是您需要像"HH\\:mm\\:ss"那样对':'字符进行转义。请注意,这里有一个双反斜杠,因为如果您只指定一个,它会破坏字符串,因此您也需要转义那个。问题是,.NETFramework开发人员为什么要这样做?必须有一个肯定的理由。为什么我们不能

c# - LINQ Guid toString()

嗨,这看起来应该可行,fromsomethingincollectionofsomestuffselectnewSelectListItem(){Text=something.Name,Value=something.SomeGuid.ToString(),Selected=false};当我尝试这样做时它不起作用给我错误LINQtoEntitiesdoesnotrecognizethemethod'System.StringToString()'method,andthismethodcannotbetranslatedintoastoreexpression.有解决办法吗?

c# - 为什么在值类型上隐式调用 toString 会导致框指令

这更像是一个“想知道为什么”而不是一个特定的问题,但请看下面的代码staticvoidMain(string[]args){intval=10;Console.WriteLine("valis{0}",val);//(1)Console.WriteLine("valis{0}",val.ToString());//(2)}情况(1)输出以下ILIL_0000:nopIL_0001:ldc.i4.s10IL_0003:stloc.0IL_0004:ldstr"valis{0}"IL_0009:ldloc.0IL_000a:box[mscorlib]System.Int32IL_000f:

c# - 复制的 NameValueCollection 的 ToString() 未输出所需的结果

我在用户控件中有一个NameValueCollection,它是这样初始化的:privateNameValueCollection_nameValues=HttpUtility.ParseQueryString(Request.QueryString.ToString());当我调用ToString()时,它会生成一个正确的查询字符串,我可以将其用于更新的url。但是,当我像这样通过其构造函数复制NameValueCollection时:varnameValues=newNameValueCollection(_nameValues);然后尝试形成一个url:varnewUrl=Str