两者之间有什么区别(如果有的话)(相对于.Net)?
如何将多行字符串拆分成行?
我知道这种方式
var result = input.Split("\n\r".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
Run Code Online (Sandbox Code Playgroud)
看起来有点难看,失去空行.有更好的解决方案吗?
我应该使用什么行尾标识符(例如,输出到文本文件)?
有很多选择:
Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10)(由Visual Studio设计器生成,至少是Visual Basic 2005 Express Edition,用于在编辑属性Text时使用+ 时将属性Multiline设置为True 的TextBox .)ShiftReturn什么是最佳做法?
可能重复:
在.net中的换行符上拆分字符串的最简单方法?
我试图读出并解释每行的字符串行.我看了一下StringReader类,但是当我在最后一行时,我需要找出它.这是我想要完成的一些伪代码:
while (!stringReaderObject.atEndOfStream()) {
interpret(stringReaderObject.readLine());
}
Run Code Online (Sandbox Code Playgroud)
有人知道怎么做吗?
谢谢!
伊凡
如果你的应用程序必须对大型对象进行大量的分配/解除分配(> 85000字节),它最终会导致内存碎片,并且应用程序将抛出内存不足异常.
有没有解决这个问题的方法,还是CLR内存管理的限制?
我有传入的数据,需要分成多个值...即.
2345 \n564532 \n345634 \n234 234543 \n1324 2435 \n
当我收到它时,长度是不一致的,当它存在时间距是不一致的,我想分析每个\n之前的最后3位数.如何断开字符串并将其转换为新字符串?就像我说的,这一轮,它可能有3个\n命令,下一次,它可能有10个,我如何创建3个新字符串,分析它们,然后在接下来的10个进入之前销毁它们?
string[] result = x.Split('\r');
result = x.Split(splitAtReturn, StringSplitOptions.None);
string stringToAnalyze = null;
foreach (string s in result)
{
if (s != "\r")
{
stringToAnalyze += s;
}
else
{
how do i analyze the characters here?
}
}
Run Code Online (Sandbox Code Playgroud) 对于类项目,我必须将文本文件加载到链接列表中.到目前为止,我已经能够从文件中读取,但我正在努力将其拆分为多个部分,以便我可以将其放入链接列表中.
例如,我想在空行处拆分这些项目:
David
Hunter
No1
Admin
约翰
史密斯
No11
销售
Jane
Appleby
No5
账户
我试过String[] people = record.Split('\n');但当然,这只是在每一行都分开了.
我也尝试过:
String[] people = record.Split('\n\r');
String[] people = record.Split('\r\n');
String[] people = record.Split('\n\n');
但是由于"字符文字中的字符过多"而无法编译
任何人都可以建议一种方法来做到这一点(最好没有正则表达式)?
可以说我有
string str = @"Line 1
Line 2
Line 3";
Run Code Online (Sandbox Code Playgroud)
我怎样才能把它变成一个数组,其中 3 个元素是“第 1 行”、“第 2 行”和“第 3 行”。
我有以下代码:
string myTest = "Line1Test" + Environment.NewLine +
"Line2Test" + Environment.NewLine +
"Line3Test" + Environment.NewLine;
string[] parseStr = myTest.Split(Environment.NewLine.ToCharArray());
Run Code Online (Sandbox Code Playgroud)
我得到的是新数组中每隔一行的数据.我认为这是因为拆分线分为换行和回车,但我怎样才能每行得到一个元素?
我试图将一个字符串拆分为两个数组.
第一个数组在字符串的开头有数据,由\t(tab)字符分割,其余部分在第一个换行符(\n)后面.
我试过这个,认为这就是我想要的:
string[] pqRecords = pqRequests.ToString().Split('\n');
Run Code Online (Sandbox Code Playgroud)
我也试过这个:
internal static readonly string segment = Environment.NewLine + "\t";
string[] pqRecords = pqRequests.ToString().Split(segment);
Run Code Online (Sandbox Code Playgroud)
不幸的是,该Split方法只需要一个字符.
我知道我的pqRequests字符串变量中有vbcr,因为当我将鼠标悬停在它上面并看到文本可视化时,第一行有标签,其他一切都在它自己的行上.
这个数据取自txt文件,在文件中,当在Notepad ++中打开时,我可以看到这些CR字符.
c#中是否有替代常量我应该用于这些CR字符?
我想知道是否有办法避免foreach以下代码中的循环:
List<string> lines1 = new List<string>();
List<string> lines2 = new List<string>();
lines1.AddRange(File.ReadAllLines("in.txt"));
foreach(string s in lines1)
lines2.Add(Regex.Replace(s,"bim(.*)","bom$1");
Run Code Online (Sandbox Code Playgroud)
请注意,循环还需要在处理期间有两个列表.我的目标是将一个正则表达式应用于原位列表中的每个字符串.
我确实想在第一个\r\n\符号之前获取所有文本。
例如,
lalal lalal laldlasdaa daslda\r\n\Prefersaasda reanreainrea
我需要:lalal lalal laldlasdaa daslda。上面的字符串可以为空,但也可以不包含任何'\r\n\'符号。”我怎样才能做到这一点?