【c# – 如何通过在String中指定其名称来获取枚举类型】教程文章相关的互联网学习教程文章

C#String.Format可选参数【代码】

我想使用带有可选参数的string.Format:public static void Main(string[] args) {// Your code goes here// Console.WriteLine(string.Format("{0} {1}", "a", "b"));Console.WriteLine(string.Format("{0} {1}", "a")); }例如,参数{1}是可选的并具有默认值 你能帮帮我吗?解决方法:这取决于“可选参数”的含义. 如果要使用默认值自动替换null,最简单的方法是在参数内使用null coalescing运算符:String.Format("{0} {1}", "a",so...

c# – 是否可以使用StringFormat将“”(引号)添加到绑定中【代码】

所以我有一个TextBlock绑定到我的对象上的属性,如下所示:<TextBlock Grid.Column="1" Text="{Binding FriendlyName}" Margin="0,5,0,5"/>我现在想用引号括起这个文本并添加一个连字符,所以我尝试了:<TextBlock Grid.Column="1" Text="{Binding FriendlyName, StringFormat= - \"{0}\"}" Margin="0,5,0,5"/>但是得到了一些错误. 我也试过(从here):<TextBlock Grid.Column="1" Text="{Binding FriendlyName, StringFormat= - &qu...

c# – 为什么Int32.ToString()发出调用指令而不是callvirt?【代码】

对于以下代码段:struct Test {public override string ToString(){return "";} }public class Program {public static void Main(){Test a = new Test();a.ToString();Int32 b = 5;b.ToString();} }编译器发出以下IL:.locals init ([0] valuetype ConsoleApplication2.Test a,[1] int32 b)IL_0000: nopIL_0001: ldloca.s aIL_0003: initobj ConsoleApplication2.TestIL_0009: ldloca.s aIL_000b: constrained. Conso...

c# – 为什么dynamic.ToString()在字符串而不是字符串之间返回一些东西?【代码】

我使用从DynamicObject派生的类型作为某些字符串的构建器.最后,我调用ToString来获得最终结果. 在这一点上,我认为它会给我一个正常的字符串,但这个字符串有点奇怪.当我在其上使用字符串函数时,它的行为就像一个,但它的行为就像我实际上不知道什么,既不是字符串也不是动态. 这就是我在构建器上实现ToString的方法public class Example : DynamicObject {public override bool TryConvert(ConvertBinder binder, out object result){...

c# – StringComparison,为什么“TH”不是以“T”开头【代码】

我正在使用StringComparison,“vi-VN”文化;为什么比较字符串“TH”或“Th”.StartsWith(“T”,StringComparison.CurrentCulture)返回false?解决方法:Th is a grapheme in Vietnamese.它是一个单独的文本单元,而不是两个单位的文本,因为它是英文的.因此,Th不是以T开头,因为它是它自己独特的角色. 您需要使用区分Th和字母T和h的文化.例如:"Th".StartsWith("T", StringComparison.InvariantCulture)

c# – 为什么我不能通过pinvoke让GetPrivateProfileString工作?【代码】

运行我在64位Vista上编写的c#控制台应用程序.这是代码:class Class1 {static void Main(string[] args){Debug.Assert(File.Exists(@"c:\test.ini"));StringBuilder sb = new StringBuilder(500);uint res = GetPrivateProfileString("AppName", "KeyName", "", sb, sb.Capacity, @"c:\test.ini");Console.WriteLine(sb.ToString());}[DllImport("kernel32.dll")]static extern uint GetPrivateProfileString(string lpAppName, st...

C# – RSACryptoServiceProvider解密为SecureString而不是字节数组【代码】

我有一个方法,当前返回从字节数组转换的字符串:public static readonly UnicodeEncoding ByteConverter = new UnicodeEncoding(); public static string Decrypt(string textToDecrypt, string privateKeyXml) {if (string.IsNullOrEmpty(textToDecrypt)){throw new ArgumentException("Cannot decrypt null or blank string");}if (string.IsNullOrEmpty(privateKeyXml)){throw new ArgumentException("Invalid private key XML ...

C#Winforms DatagridviewCombobox异常String无法转换为类

我从datagridview中嵌入的datagridviewcombobox(下拉菜单)控件中选择一个新值时遇到异常.组合框由BindingSource填充,其中填充了我的类的实例.我可以正确显示菜单中的选项,然后选择一个,但是将焦点更改为新控件(我猜想提交更改)会导致出现异常:从System.String到myclass的无效转换.堆栈跟踪(如果我正确使用该字)显示源是 System.Windows.Forms.DataGridView.PushFormattedValue级联到System.Convert.DefaultToType 下面有一个更明确...

C#中string类型的不可变性【代码】【图】

string是C#中比较常用的字符串类型,之前一直都只是使用它,却没有深入的去了解,今天在书中忽然看到它具有不可变性;于是便仔细了解了一下。//声明并初始化string类型变量 string Text = “Hello”; //对string类型变量赋值 Text = “Hi” 在这里,在把Hi字符串赋给string变量Text之前 内存首先会重新初始化一块区域,并把区域的值初始化为Hi。之后,这块内存的地址将赋给变量Text,而原来存放hello的内存区域则不会改变,可以看...

c# – 处理繁琐的string.Split重载?【代码】

.NET中的string.Split()使用起来很麻烦.对于许多重载,即使传递单个分隔符,也必须指定一个数组(实际上只有一个重载用params标记). 有没有这样的选择?有没有一种方法可以在不创建数组的情况下完成任务.解决方法:问题是在开发这样一个API时存在两个相互冲突的最佳实践(它们都是良好实践,除非在这种特殊情况下通常不会发生冲突): >只有params参数可以/必须作为最后一个参数出现.>函数的重载应该保持相同的参数排序. 所以你有第一个重...

c# – ToString中的.NET舍入错误(“f2”)【代码】

你好,我在C#中有这个代码:float n = 2.99499989f; MessageBox.Show("n = " + n.ToString("f2", CultureInfo.InvariantCulture));这段代码用C:float n = 2.99499989f; printf("n = %.2f", n);第一个输出3.00.第二个输出2.99. 我不知道为什么会这样. 更新: 我也尝试了Objective-C NSLog,输出为2.99. 我需要快速修复它,所以我使用以下方法:float n = 2.99499989f; float round = (float)Math.Round(n, 2); MessageBox.Show("round...

c# – Newtonsoft Json反序列化为动态列表,boolean属性变为string【代码】

似乎无法将包含布尔属性的动态列表反序列化为布尔值.我有以下json.[{"Field1": 1,"Field2": "Test 1","Field3": true},{"Field1": 2,"Field2": "Test 2","Field3": false} ]我用的时候:Newtonsoft.Json.JsonConvert.DeserializeObject<List<dynamic>>(jsonString)我得到Field3 =“True”或“False”当绑定到网格或其他控件时,它认为这是一个“字符串”而不是“布尔”. 有什么建议?最佳答案:所以我尝试安装LinqPad并找出它为什么...

C# List<string>转换成字符串 按指定的字符分隔【代码】

var stringExcept = result.Except(compareList).ToList(); //两个List获取差集 string notExistValue = String.Join(",", stringExcept.ToArray());//数组转换成string用逗号分隔转自: https://www.cnblogs.com/huangtailang/p/4106314.html

C#-----string类的常用方法

1.IsNullOrEmpty(String value) 指示指定的字符串是 null 还是空字符串 例:string str = "jtx"; bool flag = string.IsNullOrEmpty(str); Console.WriteLine(flag); 2.Trim() 从当前 System.String 对象移除所有前导空白字符和尾部空白字符 例:string str = " jtx gps "; Console.WriteLine(str.Trim()); 3.ToUpper() 返回此字符串转换为大写形式的副本 ...

【C#】关于DateTime的一点记录 ToString("yyyy-MM-dd HH:mm:ss")【代码】【图】

DateTime dt = DateTime.Now; string z = dt.ToString("yyyy-MM-dd HH:mm:ss");//你直达这个是 年月日时分秒的格式吧? string a = dt.ToString("yyyy-MM-dd HH:mm:ss ms");//这个你认为一定是 +毫秒的格式? string b = dt.ToString("yyyy-MM-dd HH:mm:ss fff"); int ms = dt.Millisecond;一切以实时说话。见图。完!! 2019年4月25日14:38:49

枚举类型 - 相关标签