Tag: 字符串

如何从c#中的字符串中提取十进制数

string sentence = “X10 cats, Y20 dogs, 40 fish and 1 programmer.”; string[] digits = Regex.Split (sentence, @”\D+”); 对于这个代码,我得到数字数组中的值,如10,20,40,1 string sentence = “X10.4 cats, Y20.5 dogs, 40 fish and 1 programmer.”; string[] digits = Regex.Split (sentence, @”\D+”); 对于这个代码,我得到数字数组中的值,如10,4,20,5,40,1 但我喜欢这样的10.4,20.5,40,1十进制数如何才能做到这一点。

将SQL Server varBinary数据转换为字符串C#

我需要帮助找出如何将来自设置为varBinary(max)的SQL Server表列的数据转换为字符串,以便在标签中显示它。 这是在C#中我正在使用DataReader 。 我可以使用以下方式提取数据: var BinaryString = reader[1]; 我知道这个列包含以前转换为二进制的文本。

字符串到C#中的二进制

我有一个函数将字符串转换为hex,因此, public static string ConvertToHex(string asciiString) { string hex = “”; foreach (char c in asciiString) { int tmp = c; hex += String.Format(“{0:x2}”, (uint)System.Convert.ToUInt32(tmp.ToString())); } return hex; } 你能帮我把另一个字符串写成基于我的样本函数的二进制函数吗? public static string ConvertToBin(string asciiString) { string bin = “”; foreach (char c in asciiString) { int tmp = c; bin += String.Format(“{0:x2}”, (uint)System.Convert.????(tmp.ToString())); } […]

使用字符串连接构建XML有什么坏处?

在线程什么是你最喜欢的“程序员无知”宠儿? ,出现以下答案,有大量的赞成票: Programmers who build XML using string concatenation. 我的问题是,为什么通过字符串连接构建XML(例如C#中的StringBuilder )不好? 我过去曾多次这样做过,因为对于我正在使用的数据结构/对象来说,它有时是从A点到B点的最快捷方式。 到目前为止,我提出了一些原因,为什么这不是最好的方法,但有什么我忽略的? 为什么要避免这种情况? 可能我能想到的最大原因是你需要手动转义字符串,大多数新程序员(甚至是一些有经验的程序员)都会忘记这一点。 它们在测试时对它们很有用,但是当有人在某个地方输入一个&符号时,“随机”他们的应用程序将会失败。 好的,我会买这个,但是很容易防止这个问题( SecurityElement.Escape命名一个)。 当我这样做时,我通常省略XML声明(即 )。 这有害吗? 绩效惩罚? 如果坚持使用正确的字符串连接(即StringBuilder ),这是否需要关注? 据推测,像XmlWriter这样的类也需要做一些字符串操作…… 有更优雅的生成XML的方法,例如使用XmlSerializer自动序列化/反序列化类。 好的,我同意。 C#有很多有用的类,但有时我不想为一些非常快速的类创建类,比如写出日志文件或其他东西。 这只是我懒惰吗? 如果我正在做一些“真实”的事情,这是我处理w / XML的首选方法。

真正简单的短串压缩

是否有一个非常简单的压缩技术,用于长度不超过255个字符的字符串(是的,我正在压缩URL )? 我并不关心压缩的强度 – 我正在寻找性能非常好且能够快速实现的东西。 我想要一些比SharpZipLib更简单的东西:可以用几个简短的方法实现的东西。

替换许多字符串的更好方法 – 在C#中进行模糊处理

我正在尝试模糊大量数据。 我已经创建了一个我要替换的单词(标记)列表,我正在使用StringBuilder类逐个替换单词,如下所示: var sb = new StringBuilder(one_MB_string); foreach(var token in tokens) { sb.Replace(token, “new string”); } 这很慢! 我能做些什么简单的事情来加速它吗? 标记是大约一千个字符串的列表,每个字符串长度为5到15个字符。

如何通过Reflection获取字符串属性的值?

public class Foo { public string Bar {get; set;} } 如何通过reflection获得字符串属性Bar的值? 如果PropertyInfo类型是System.String,则以下代码将引发exception Foo f = new Foo(); f.Bar = “Jon Skeet is god.”; foreach(var property in f.GetType().GetProperties()) { object o = property.GetValue(f,null); //throws exception TargetParameterCountException for String type } 看来我的问题是该属性是一个索引器类型,带有System.String。 另外,如何判断该属性是否为索引器?

为什么VS 2008不在Intellisense中为String类显示扩展方法

由于String实现了IEnumerable ,我期待在Intellisense中看到Enumerable扩展方法,例如,在输入句点时 String s = “asdf”; s. 我期待看到.Select(…) .ToList()等等。然后我很惊讶看到扩展方法确实在字符串类上工作,它们只是没有出现在Intellisense中。 有人知道为什么吗? 这可能与这个问题有关。

将Float显示为具有至少1个小数位的字符串

我想将float显示为字符串,同时确保显示至少一个小数位。 如果有更多的小数,我希望那些显示。 例如:1应显示为1.0 1.2345应显示为1.2345 有人可以帮我格式化字符串吗?

两个不同的“字符串”是同一个对象实例?

代码非常自我解释。 我期望当我创建a1和b1 ,我创建了两个包含相同文本的不同字符串实例。 所以我认为a1 == b1是真的但是object.ReferenceEquals(a1,b1)会是假的,但事实并非如此。 为什么? //make two seemingly different string instances string a1 = “test”; string b1 = “test”; Console.WriteLine(object.ReferenceEquals(a1, b1)); // prints True. why? //explicitly “recreating” b2 string a2 = “test”; string b2 = “tes”; b2 += “t”; Console.WriteLine(object.ReferenceEquals(a2, b2)); // prints False //explicitly using new string constructor string a3 = new […]