Tag: 字符串

如果长度大于String的长度,则子串不按预期工作

好的,我知道如果/其他工作,我需要一个替代方案。 我在用 B = String.Concat(A.Substring(0, 40)); 捕获值的前40个字符。 如果A处的值大于40 ,则B能够捕获,但如果A的值小于40 ,则在B处没有捕获值。

字符串连接是否在内部使用StringBuilder?

我的三个同事告诉我,没有理由使用StringBuilder代替使用+运算符进行连接。 换句话说,这对一堆字符串很好: myString1 + myString2 + myString3 + myString4 + mySt… 他们使用的基本原理是,从.NET 2开始,如果使用+运算符,C#编译器将构建相同的IL,就像使用StringBuilder一样。 这对我来说是新闻。 他们是对的吗?

C#中的自定义字符串比较

我想在C#中实现自定义字符串IComparer并将其应用于ComboBox。 实际结果 如果我将ComboBox的Sorted属性设置为true ,则输出为: A AA AAA B BB BBB 通缉结果 排序算法的通缉行为如下(金融开发人员将理解为什么:)): AAA AA A BBB BB B 题 有可能吗? 这里需要排序算法吗? PS:我不需要完整的代码答案,我只需要了解它是如何完成的。 编辑 这是关于信用评级。 我在我的问题中省略了一些内容。 评级必须按此顺序排序: XXX XX+ XX XX- X+ X X- X in (‘A’,’B’,’C’)和’A’ > ‘B’ > ‘C’

将大字符串写入文件的最佳方法

在C#中,我正在读取中等大小的文件(100 KB~1 MB),修改内容的某些部分,最后写入不同的文件。 所有内容都是文字。 修改是作为字符串对象和字符串操作完成的。 我目前的做法是: 使用StreamReader读取原始文件中的每一行。 打开StringBuilder以获取新文件的内容。 修改字符串对象并调用StringBuilder AppendLine (直到文件末尾) 打开一个新的StreamWriter ,并将StringBuilder写入写入流。 但是,我发现StremWriter.Write截断32768字节(2 ^ 16),但StringBuilder的长度大StremWriter.Write 。 我可以编写一个简单的循环来保证整个字符串到文件。 但是,我想知道在执行此任务时C#中最有效的方法是什么? 总而言之,我只想修改文本文件的某些部分并写入不同的文件。 但是,文本文件大小可能大于32768字节。 ==答案==我很抱歉让你烦恼! 只是我没有打电话给flush 。 StremWriter.Write没有短(例如,2 ^ 16)限制。

c#字符串以正则数字开头

我一直在寻找一下如何确定一个以数字开头的字符串。 我遇到了一个正则表达式声明’/ ^ \ d /’我可以确认是否以数字开头。 但是我似乎无法在下面的代码中使用它。 任何人都可以指出我在声明中出错的地方(Regex.Match(info,“/ ^ \ d /”))? 谢谢! //String attachbody is the attachment body from an email i read into a string string[] data = Regex.Split(attachbody, “\n”); foreach (String info in data) { if (Regex.Match(info,”/^\d/”)) { string[] tabbedHeaderData = Regex.Split(info, “\t”); TicketID = tabbedHeaderData[0].ToString(); Status = tabbedHeaderData[1].ToString(); URL = tabbedHeaderData[2].ToString(); […]

如何删除字符串的已定义部分?

我有这个字符串:“NT-DOM-NV \ MTA”如何删除第一部分:“NT-DOM-NV \”结果如下:“MTA” RegEx怎么可能?

计算字符串开头的空格

我如何计算C#中字符串开头的空格量? 例: ” this is a string” 结果将是4.不确定如何正确地做到这一点。 谢谢。

将字符串转换为unicode表示

可能重复: 将Unicode字符串转换为转义的ascii字符串 我怎样才能将ä…变成像\u0131… ? 这样做有什么function吗? ps: 在这旁边:[对不起@Kendall Frey :-)] char a = ‘ä’; string escape = “\\u” + ((int)a).ToString(“X”).PadLeft(4, ‘0’);

用星号替换小写字符

我写了一个代码,用于将小写字符替换为*。 但它不起作用。 问题出在哪儿? private void CharacterReplacement() { Console.WriteLine(“Enter a string to replacement : “); string TargetString = Console.ReadLine(); string MainString = TargetString; for (int i = 0; i < TargetString.Length; i++) { if (char.IsLower(TargetString[i])) { TargetString.Replace(TargetString[i], '*'); } } Console.WriteLine("The string {0} has converted to {1}", MainString, TargetString); }

如何将枚举转换为类型

我有这样的枚举。 public enum eTypeVar { Int, Char, Float }; 我想将它转换为类型,做这样的事情: eTypeVar type=eTypeVar .Int; string str= eTypeVar.ToString .ToLower(); (str as type) a=1; 我该怎么办?