完全な文字列の特定の部分のみを読み取る必要があります。文字列は次の形式になります。
「1いくつかの通貨名=0.4232他の通貨名」
したがって、私が思いついた最も簡単な方法は、文字列を等しい(=)演算子で分割し、次のように2つの値を配列に追加することでした。
string rawInput = "1 Some Currency Name = 0.4232 Other Currency Name";
string[] rawSplit = rawInput.Split('=');
string firstRate = rawSplit[0].ToString();
string secondRate = rawSplit[1].ToString();
ここで、secondRate文字列の最初の部分( "0.4232")のみを取得する必要があります。だから私はその文字列をもう一度分割します(悪いコーディング):
string[] lastSplit = secondRate.Split(); //Split at whitespace characters
string firstValue = lastSplit[0].ToString(); //Should return "0.4232" but instead returns ""
この関数をテストするためにアプリケーションを実行すると、値「0.4232」の代わりに空の文字列が返されます。なぜこうなった?ここで何が欠けていますか?
完全な方法:
private void btnTest_Click(object sender, EventArgs e)
{
string rawInput = "1 Some Currency Name = 0.4232 Other Currency Name";
string[] rawSplit = rawInput.Split('=');
string baseRate = rawSplit[0].ToString(); //1 Some Currency Name
string conversionRate = rawSplit[1].ToString(); //0.4232 Other Currency Name
rawSplit = GetSplit(conversionRate);
XtraMessageBox.Show(rawSplit[0].ToString()); //Returns blank string here???
}
private string[] GetSplit(string inputString)
{
return inputString.Split();
}
どんなアイデアや提案も歓迎し、大歓迎です!