getting substring from a string
-
if i am able to do it like this 100=ARCA10=169|0| using substring now i have to get value of first tag eg 100= Result should be "ARCA" i want it in seperate string
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
String fixString = "Whateever"; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... HashTable fixTable = new HashTable(); string[] fieldArray = null; for (int fieldCount = 1; fieldCount < message.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } string firstTagString = fixTable["100"].ToString()
This will give you string which is there in tag 100, no matter at what position it is at. I am telling you this because FIX is a tag based protocol and not a position based. The position may vary from message to message. It is a more generalized solution for your scenario. Success -
String fixString = "Whateever"; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... HashTable fixTable = new HashTable(); string[] fieldArray = null; for (int fieldCount = 1; fieldCount < message.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } string firstTagString = fixTable["100"].ToString()
This will give you string which is there in tag 100, no matter at what position it is at. I am telling you this because FIX is a tag based protocol and not a position based. The position may vary from message to message. It is a more generalized solution for your scenario. Successyou do message.Length you mean fixString.Length here Am i right even than its crashing for my message
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
-
you do message.Length you mean fixString.Length here Am i right even than its crashing for my message
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
My Mistake :omg: It should be fixArray Here's your code
String fixString = "Whateever"; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... HashTable fixTable = new HashTable(); string[] fieldArray = null; for (int fieldCount = 1; fieldCount < fixArray.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } string firstTagString = fixTable["100"].ToString()
-
My Mistake :omg: It should be fixArray Here's your code
String fixString = "Whateever"; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... HashTable fixTable = new HashTable(); string[] fieldArray = null; for (int fieldCount = 1; fieldCount < fixArray.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } string firstTagString = fixTable["100"].ToString()
its still giving index was outside the bounds of array
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
-
its still giving index was outside the bounds of array
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
Can you post your code here? Also provide the string which you using
-
Can you post your code here? Also provide the string which you using
try { String fixString = newLine; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... Hashtable fixTable = new Hashtable(); string[] fieldArray = null; for (int fieldCount = 1; fieldCount < fixArray.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } string firstTagString = fixTable["100"].ToString(); } catch(Exception ex) { String x=ex.ToString(); } "M|2696|0|D|I|20070604-19:31:25.177|255|8=FIX.4.29=23235=D34=269649=Qa-QTIP-Sim-A56=Qa-QTIP-Sim-A-Internal52=20070604-23:31:2540=1MDSNAPID=6071=511=Q8BO7023-121=4955=QQQQ59=05011=12463/2007-06-04-07:3138=100109=RajTest5012=Raj9040=NSTRATEGY=PassThru54=147=A100=ARCA10=169|0|\r"
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
-
try { String fixString = newLine; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... Hashtable fixTable = new Hashtable(); string[] fieldArray = null; for (int fieldCount = 1; fieldCount < fixArray.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } string firstTagString = fixTable["100"].ToString(); } catch(Exception ex) { String x=ex.ToString(); } "M|2696|0|D|I|20070604-19:31:25.177|255|8=FIX.4.29=23235=D34=269649=Qa-QTIP-Sim-A56=Qa-QTIP-Sim-A-Internal52=20070604-23:31:2540=1MDSNAPID=6071=511=Q8BO7023-121=4955=QQQQ59=05011=12463/2007-06-04-07:3138=100109=RajTest5012=Raj9040=NSTRATEGY=PassThru54=147=A100=ARCA10=169|0|\r"
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
Here it is:
try { string newLine = "M|2696|0|D|I|20070604-19:31:25.177|255|8=FIX.4.29=23235=D34=269649=Qa-QTIP-Sim-A56=Qa-QTIP-Sim-A-Internal52=20070604-23:31:2540=1MDSNAPID=6071=511=Q8BO7023-121=4955=QQQQ59=05011=12463/2007-06-04-07:3138=100109=RajTest5012=Raj9040=NSTRATEGY=PassThru54=147=A100=ARCA10=169|0|\r"; String fixString = newLine; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... Hashtable fixTable = new Hashtable(); string[] fieldArray = null; try { for (int fieldCount = 0; fieldCount < fixArray.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } } catch { } string firstTagString = fixTable["100"].ToString(); MessageBox.Show(firstTagString); } catch (Exception ex) { MessageBox.Show(ex.Message); }
Let me know if this works... -
Here it is:
try { string newLine = "M|2696|0|D|I|20070604-19:31:25.177|255|8=FIX.4.29=23235=D34=269649=Qa-QTIP-Sim-A56=Qa-QTIP-Sim-A-Internal52=20070604-23:31:2540=1MDSNAPID=6071=511=Q8BO7023-121=4955=QQQQ59=05011=12463/2007-06-04-07:3138=100109=RajTest5012=Raj9040=NSTRATEGY=PassThru54=147=A100=ARCA10=169|0|\r"; String fixString = newLine; string[] fixArray = fixString.Split(Convert.ToChar(1)); //I used 1 because FIX message uses this as delimiter... Hashtable fixTable = new Hashtable(); string[] fieldArray = null; try { for (int fieldCount = 0; fieldCount < fixArray.Length; fieldCount++) { fieldArray = fixArray[fieldCount].Split('='); fixTable.Add(fieldArray[0].ToString(), fieldArray[1].ToString()); } } catch { } string firstTagString = fixTable["100"].ToString(); MessageBox.Show(firstTagString); } catch (Exception ex) { MessageBox.Show(ex.Message); }
Let me know if this works...after this line string firstTagString = fixTable["100"].ToString(); it jumps out and go to lines after catch (Exception ex) { MessageBox.Show(ex.Message); }
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
-
after this line string firstTagString = fixTable["100"].ToString(); it jumps out and go to lines after catch (Exception ex) { MessageBox.Show(ex.Message); }
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"
Dude, I ran it with the same code... If it is running for exception than it means ur message did not contain message with tag 100... nyway, for which company do you work?
-
Dude, I ran it with the same code... If it is running for exception than it means ur message did not contain message with tag 100... nyway, for which company do you work?
ya it works fine catched the exception then read the value thanks a lot for help
Ankit Aneja "Nothing is impossible. The word itself says - I M possible"