It is called ‘parsing’ and there are a number of ways to do this which depend on what library string functions your compiler supports. The brute force method is to go through the string one character at a time ans test if the character is a space or tab (or conversely a good character) then write a good character to a new string and skip to the next character if a space or tab.
You compiler may have some useful string functions so read the manual to see what it has and how to use them.
Like wise, do a web search (google) for C language string parsing functions to learn more.
And you’re right, I was looking at using the String object within the Arduino environment which is where my initial subject line came from, it changes the data type, and I can’t pass it to SD.open anymore. I don’t know how to convert it back.
Well, on a desktop PC, I’d probably use a regular expression to parse the line easily, but a quick googling reveals that is still not implemented on gcc. You can try strtok(fileData, "|\t ") – that’s “pipe, tab, space” and that seems like it should work.
Ok, that does seem to work, however it fails if there are two TABs one after the other. This would be so much easier with proper regexp … but I digress.