I have created a file with printStream object as shown below.
PrintStream outPutOffice = new PrintStream(
new BufferedOutputStream(new FileOutputStream(inDir+"/Office.txt")));
outPutOffice.print(fValue + (findx < agtOffColCount ? "|" : ""));
Now I have to read it content and separate it tokens with "|" as I have written token with "|" separated. I have write code as shown below it will read line correctly but not separate token with "|" character.
BufferedReader inPutAgent = new BufferedReader(
new InputStreamReader(new FileInputStream(inDir+"/Office.txt")));
String column=inPutAgent.readLine();
String []columnDetail = column.split("|");
columndetail array contains single character in each index instead i want single token in each index.
What is the problem?
You should look into the StringTokenizer, it's a very handy tool for this types of work.
Example
This will putput
You use the Second Constructor for StringTokenizer to set the delimiter:
StringTokenizer(String str, String delim)
You could also use a Scanner as one of the commentators said this could look somewhat like this
Example
The output would be
Meaning that it will cut out the word "fish" and give you the rest, using "fish" as the delimiter.
examples taken from the Java API
The argument to split is a regex. You should do:
or:
the split method works with regular expressions and since the pipe symbol (|) has a special meaning and is reserved, you need to escape it like this:
You should read about regex here or here