Information générale
Catégorie:
Code, syntaxe and commandes
>>>Hi,
>>>
>>>I'm sure this is something simple but I am too close to see the problem.
>>>
>>>I have a string with this value (it is being read from a text file):
>>>
>>>string inputLine = "1,73358,"20130111","MIA","POS","BW 791","106 8750 3231 - 7 BAGS LESS""
>>>
>>>I want to pull out the 73358 and the 20130111 into two variables, so I did this:
>>>
>>>string manifestNumber = inputLine.Substring(inputLine.IndexOf(",") + 1, inputLine.IndexOf(",", 2) - (inputLine.IndexOf(",") + 1));
>>>string manifestDate = inputLine.Substring(inputLine.IndexOf("\"") + 1, inputLine.IndexOf("\"", 2) - (inputLine.IndexOf("\"") + 1));
>>>
>>>manifestNumber works properly to give me 73358.
>>>
>>>I get an error on manifestDate that "length cannot be less than zero".
>>>
>>>When I check inputLine.IndexOf("\"") I get 8
>>>and inputLine.IndexOf("\"", 2) also returns 8!
>>>
>>>Why should that be?
>>
>>Something wrong here. This wouldn't resolve to a string:
>>string inputLine = "1,73358,"20130111","MIA","POS","BW 791","106 8750 3231 - 7 BAGS LESS""
>
>sorry, it passed through UT's compiler without a problem ;)
>
>it is a string, I read it from a text file. I just used the outer quotation marks to illustrate the point, but I guess I should hav eused single quotes.
>
>FWIW, I used inputLine.Split(',') to get what I needed, but I'm very interested in what I was doing wrong with IndexOf.
I was going to suggest split. Maybe I'm being dense but I can't make sense of that line. Can you just paste the line directly from the C# code.....
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement