2012-04-24 110 views
0

大家好我正在讀取一個文件到一個字符串變量,但我想知道什麼是最好的方式只返回字符串中的特定元素到一個新的變量。從字符串文件中獲取特定元素

我有以下的字符串數據的文件:

[TEST1] 
mem.consumed.average = 965608688 
cpu.usagemhz.average = 18653 
Hosts = 3 
Points = 1535 
RAM = 1535.96 
CPU = 191.79 
Powered_on VMs = 70 
Powered_on RAM = 1049.02 
Powered_on CPU = 410.15 
Powered_on Points = 1051 
Provisioned VMs = 74 
Provisioned RAM = 1057.02 
Provisioned CPU = 416.59 
Provisioned Points = 1059 

[TEST2] 
mem.consumed.average = 298762549 
cpu.usagemhz.average = 7782 
Hosts = 4 
Points = 1535 
RAM = 1535.96 
CPU = 191.79 
Powered_on VMs = 54 
Powered_on RAM = 303.00 
Powered_on CPU = 266.29 
Powered_on Points = 303 
Provisioned VMs = 60 
Provisioned RAM = 330.00 
Provisioned CPU = 295.28 
Provisioned Points = 330 

我只要爲「主機」返回值,所以在上述只有主機= 3的情況(從[TEST1])和主機= 4 (來自[TEST2])。任何想法將不勝感激:)

+0

的可能重複的[讀/在C#編寫的INI文件(http://stackoverflow.com/questions/217902/reading-writing-ini-file-in-c-sharp) – user7116 2012-04-24 16:36:56

回答

1

我只是一行一行閱讀並尋找line.StartsWith("Hosts") - 當這是真的,拉出你所需要的。

0

如果您只想將其作爲字符串搜索,爲什麼不使用.indexOf函數。

因此,這將是

int a = data.indexOf('hosts'); 
int b = data.indexOf('points'); 

然後

string hosts data = data.Substring(a,b); 

,你將不得不改變指數法得到確切的價值了,但它應該很容易 喜歡的東西

string hosts data = data.Substring(a + 7,b - 2);