jjzjj

c# - Decimal.Parse 和不正确的字符串格式错误

我有一个小数解析的简单问题。以下代码在我的电脑上运行良好,但当我在服务器(VPS,WindowsServer2008R2标准版)上发布项目时,出现错误“输入字符串格式不正确”。有什么问题吗?我将解析后的数字存储在MySQL数据库表中-列类型为DECIMAL(10,4)源代码:CultureInfononInvariantCulture=newCultureInfo("en-AU");//orpl-PLnonInvariantCulture.NumberFormat.NumberDecimalSeparator=".";Thread.CurrentThread.CurrentCultur

c# - 带有前导零的 int.Parse()

如何防止下面的代码抛出FormatException。我希望能够将带有前导零的字符串解析为整数。有没有一种干净的方法可以做到这一点?stringvalue="01";inti=int.Parse(value); 最佳答案 您的代码为我运行,没有FormatException(一旦您正确地使用了该方法):stringvalue="01";inti=int.Parse(value);但这确实敲响了警钟;这是我多年前遇到的一个问题,Microsoft将其视为针对Windows(而非.NET)本地化组件的错误。要测试您是否看到了这一点,请运

c# - IPAddress.Parse() 使用 IPv4 上的端口

我正在尝试使用IPAddress.Parse解析包含IP地址和端口的字符串。这适用于IPv6地址,但不适用于IPv4地址。有人可以解释为什么会这样吗?我使用的代码是:IPAddress.Parse("[::1]:5");//ValidIPAddress.Parse("127.0.0.1:5");//null 最佳答案 Uriurl;IPAddressip;if(Uri.TryCreate(String.Format("http://{0}","127.0.0.1:5"),UriKind.Absolute,outurl)&&IPAdd

c# - 为什么 Enum.Parse() 返回对象?

这里有很多关于将字符串转换为枚举值的问题。通常,答案看起来类似于thisquestion上的答案。:StatusEnumMyStatus=(StatusEnum)Enum.Parse(typeof(StatusEnum),"Active",true);虽然这是一个非常合理的答案,并且您可以编写一个方法来简化调用,但它没有回答为什么Enum.Parse()返回object的问题。而不是适当的枚举值。为什么我必须将它转换为StatusEnum?编辑:基本上,问题是为什么像这样的函数不是Enum类的一部分?publicstaticTParse(stringvalue)whereT:struc

C# float.Parse 字符串

我是C#新手,需要从文件中读取float值(x,y,z)。看起来像:0-0.01-0.0020.000833333333333-0.01-0.002如果我正在尝试floatnumber=float.Parse("0,54");//itworkswell,butfloatnumber=float.Parse("0.54");//gainsexepction.我从每一行读取值的代码(可能有问题):intbegin=0;intend=0;for(inti=0;i有人可以帮忙吗? 最佳答案 float.Parse(string)method

c# - 没有装箱的通用解析方法

我正在尝试编写一个通用的Parse方法来转换并返回来自NamedValueCollection的强类型值。我尝试了两种方法,但这两种方法都是通过装箱和拆箱来获取值的。有谁知道避免拳击的方法吗?如果您在生产中看到这个,您会不会喜欢它,它对性能有多糟糕?用法:varid=Request.QueryString.Parse("id");尝试#1:publicstaticTParse(thisNameValueCollectioncol,stringkey){stringvalue=col[key];if(string.IsNullOrEmpty(value))returndefault(T)

c# - 在 C# 中使用字节数组

我有一个表示完整TCP/IP数据包的字节数组。为清楚起见,字节数组的顺序如下:(IPheader-20字节)(TCPheader-20字节)(有效负载-X字节)我有一个Parse函数,它接受一个字节数组并返回一个TCPHeader对象。它看起来像这样:TCPHeaderParse(byte[]buffer);给定原始字节数组,这是我现在调用此函数的方式。byte[]tcpbuffer=newbyte[20];System.Buffer.BlockCopy(packet,20,tcpbuffer,0,20);TCPHeadertcp=Parse(tcpbuffer);有没有一种方便的方法

c# - TimeSpan.Parse 时间格式 hhmmss

在c#中,我有hhmmss格式的时间,例如12:45:10的124510,我需要知道TotalSeconds。我使用了TimeSpan.Parse("12:45:10").ToTalSeconds但它不采用hhmmss格式。有什么好的方法可以转换它吗? 最佳答案 这可能有帮助usingSystem;usingSystem.Globalization;namespaceConsoleApplication7{classProgram{staticvoidMain(string[]args){DateTimed=DateTime.Par

c# - 最好使用 int.Parse 或 Convert.ToInt32

这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:Whatsthemaindifferencebetweenint.Parse()andConvert.ToInt32我想知道使用Convert.ToInt32VSint.Parse的优点和缺点是什么。这里是我使用的语法示例:intmyPageSize=Convert.ToInt32(uxPageSizeUsersSelector.SelectedValue);intmyPageSize=int.Parse(uxPageSizeUsersSelector.SelectedValue);我也找到了这些文章,也许他

c# - XDocument.Parse 成功还是失败?

我正在使用XDocumentdoc=XDocument.Parse(somestring);但是我如何验证字符串somestring是否是格式正确的XML。TryCatch是执行此操作的唯一方法吗? 最佳答案 IsTryCatchtheonlywaytodothis?XDocument没有TryParse方法,因此try-catch可能是最好的选择。还要考虑根据模式验证您的XML,因为它不仅会检查XML是否格式正确,还会检查约束。您可能会看到:ValidationAgainstXMLSchema(XSD)withtheXmlVali