【发布时间】:2016-02-06 22:28:49
【问题描述】:
我有一些代码可以读取文本文件并将其设置为字符串。文本文件的每一行都包含我试图提取的单独数据参数。下面是一个字符串/文本文件布局的小例子:
...
part=XYZ
quantity=123
weight=14
length=60
...
有没有一种好方法可以在给定行的“=”之后返回所有内容?
我目前使用子字符串让它工作,但我很好奇是否有更简洁的方法来获得相同的结果。这是我目前拥有的代码:
strStart = partData.IndexOf("part=") + 5;
strEnd = partData.IndexOf(" ", strStart);
string partNum = partData.Substring(strStart, strEnd - strStart);
补充说明
我将从文本文件中提取多个变量。例如,给定上面的数据,我将提取 4 个变量:
partNum = "XYZ"
数量 = "123"
wght = "14"
len = "60"
【问题讨论】:
-
string.Split()on= -
Substring有一个重载方法,可以返回字符串的其余部分。可以换成partData.Substring(strStart)查看文档msdn.microsoft.com/en-us/library/… -
您的编辑是不公平的,因为在您收到几个解决原始问题的答案后,它会彻底改变问题的要求。如果您现在有一个具有不同要求的不同问题,请发布一个新问题并在那里提问。您最初的问题没有询问提取多个值 - 它询问了一种更简洁的方法来获取等号右侧的部分,这是我们几个人的回答。
-
我觉得我没有改变问题。我从一开始就说明文本文件被读取为给定格式的字符串。给定的格式包含几行。我唯一更改的是为行赋予唯一值,以便更容易理解我是如何提取单独数据的。
-
我同意@SincereApathy - 这个问题确实包括编辑前的所有相关部分。在我看来,好像有些用户只是略过问题而不是实际阅读细节,然后就下结论了。