开发者

How to parse this output and separate each field/word

This is Akshatha. I'm stuck in parsing the following data. I want to fetch each word individually. Can I have a sample code so that I can proceed

 RTRV-HDR   RH01 


   SIMULATOR 09-11-18 16 13 19


M  RH01 COMPLD


 RTRV-EQPT  ALL RE01 


   SIMULATOR 09-11-18 16 13 20


M  RE01 COMPLD


   SLOT-1-1-1 CMP IS-NR


   SLOT-1-1-2 CMP IS-NR


   SLOT-1-1-3 OLC IS-NR


   SLOT-1-1-4 OLC IS-NR


   SLOT-1-1-5 OLC IS-NR


   SLOT-1-1-6 OLC IS-NR


   SLOT-1-1-7 OLC IS-NR


   SLOT-1-1-8 OLC IS-NR


   SLOT-1-1-9 IOC IS-NR


   SLOT-1-1-10 IOC IS-NR


   SLOT-1-2-1 NMC IS-NR


   SLOT-1-2-2 NMC IS-NR


   SLOT-1-2-3 OLC IS-NR


   SLOT-1-2-4 OLC IS-NR


   SLOT-1-2-5 OLC IS-NR


   SLOT-1-2-6 OLC IS-NR


   SLOT-1-2-7 OLC IS-NR


   SLOT-1-2-8 OLC IS-NR


 RTRV-ALM-EQPT  ALL RA01 


   SIMULATOR 09-11-18 16 13 21


M  RA01 COMPLD


   SLOT-1-1-1 CMP MN T-FANCURRENT-1-HIGH NSA 01-10-09 00-00-00   \Fan-T\ 


   SLOT-1-1-1 CMP MJ T-BATTERYPWR-2-LOW NSA 01-10-09 00-00-00   \Battery-T\ 


   SLOT-1-1-2 CMP CR PROC_FAIL S开发者_运维百科A 09-11-18 16-12-59   \Processor Failure\ 


   SLOT-1-1-3 OLC MN T-LASERCURR-1-HIGH SA  01-10-07 13-21-03   \Laser-T\ 


   SLOT-1-1-3 OLC MJ T-LASERCURR-2-LOW NSA  01-10-02 21-32-11   \ Laser-T\ 


   SLOT-1-1-4 OLC MN T-LASERCURR-1-HIGH SA 01-10-05 02-14-03   \Laser-T\ 


   SLOT-1-1-4 OLC MJ T-LASERCURR-2-LOW NSA 01-10-04 01-03-02   \Laser-T\ 


 RTRV-ALM-EQPT  ALL RA02  MJ  

   SIMULATOR 09-11-18 16 13 21


M  RA02 COMPLD


   SLOT-1-1-1 CMP MJ T-BATTERYPWR-2-LOW NSA 01-10-09 00-00-00   \Battery-T\ 


   SLOT-1-1-3 OLC MJ T-LASERCURR-2-LOW NSA  01-10-02 21-32-11   \ Laser-T\ 


   SLOT-1-1-4 OLC MJ T-LASERCURR-2-LOW NSA 01-10-04 01-03-02   \Laser-T\ 


 RTRV-ALM-EQPT  ALL RA03  MN  


   SIMULATOR 09-11-18 16 13 22


M  RA03 COMPLD


   SLOT-1-1-1 CMP MN T-FANCURRENT-1-HIGH NSA 01-10-09 00-00-00   \Fan-T\ 


   SLOT-1-1-3 OLC MN T-LASERCURR-1-HIGH SA  01-10-07 13-21-03   \Laser-T\ 


   SLOT-1-1-4 OLC MN T-LASERCURR-1-HIGH SA 01-10-05 02-14-03   \Laser-T\ 


 RTRV-ALM-EQPT  ALL RA04  MN T-LASERCURR-1-HIGH 


   SIMULATOR 09-11-18 16 13 22


M  RA04 COMPLD


   SLOT-1-1-3 OLC MN T-LASERCURR-1-HIGH SA  01-10-07 13-21-03   \Laser-T\ 


   SLOT-1-1-4 OLC MN T-LASERCURR-1-HIGH SA 01-10-05 02-14-03   \Laser-T\ 


 RTRV-PM-EQPT  ALL RP01 


   SIMULATOR 09-11-18 16 13 23


M  RP01 COMPLD


   SLOT-1-1-1 CMP FANCURRENT-1 180.080     


   SLOT-1-1-1 CMP FANCURRENT-2 204.660     


   SLOT-1-1-1 CMP FANCURRENT-3 230.500     


   SLOT-1-1-1 CMP FANCURRENT-4 187.580     


   SLOT-1-1-1 CMP BATTERYPWR-1 53.650     


   SLOT-1-1-1 CMP BATTERYPWR-2 53.650     


   SLOT-1-1-2 CMP FANCURRENT-1 180.080     


   SLOT-1-1-2 CMP FANCURRENT-2 204.660     


   SLOT-1-1-2 CMP FANCURRENT-3 230.500     


   SLOT-1-1-2 CMP FANCURRENT-4 187.580     


   SLOT-1-1-2 CMP BATTERYPWR-1 53.650     


   SLOT-1-1-2 CMP BATTERYPWR-2 53.650     


   SLOT-1-1-3 OLC LASERPWR-1 200.00     


   SLOT-1-1-3 OLC LASERPWR-2 200.00     


   SLOT-1-1-4 OLC LASERPWR-1 200.00     


   SLOT-1-1-4 OLC LASERPWR-2 200.00     


   SLOT-1-1-5 OLC LASERPWR-1 200.00     


   SLOT-1-1-5 OLC LASERPWR-2 200.00     


   SLOT-1-1-6 OLC LASERPWR-1 200.00     


   SLOT-1-1-6 OLC LASERPWR-2 200.00     


   SLOT-1-1-7 OLC LASERPWR-1 200.00     


   SLOT-1-1-7 OLC LASERPWR-2 200.00     


   SLOT-1-1-8 OLC LASERPWR-1 200.00     


   SLOT-1-1-8 OLC LASERPWR-2 200.00     


   SLOT-1-2-3 OLC LASERPWR-1 200.00     


   SLOT-1-2-3 OLC LASERPWR-2 200.00     


   SLOT-1-2-4 OLC LASERPWR-1 200.00     


   SLOT-1-2-4 OLC LASERPWR-2 200.00     


   SLOT-1-2-5 OLC LASERPWR-1 200.00     


   SLOT-1-2-5 OLC LASERPWR-2 200.00     


   SLOT-1-2-6 OLC LASERPWR-1 200.00     


   SLOT-1-2-6 OLC LASERPWR-2 200.00     


   SLOT-1-2-7 OLC LASERPWR-1 200.00     


   SLOT-1-2-7 OLC LASERPWR-2 200.00     


   SLOT-1-2-8 OLC LASERPWR-1 200.00     


   SLOT-1-2-8 OLC LASERPWR-2 200.00     


  INIT-SYS  SLOT-1-1-2 IS01  1 


   SIMULATOR 09-11-18 16 13 23


M  IS01 COMPLD

Thanks for ur valuable replies.


I would try String.split(). Something like this...
String [] words;
words = line.split("\s+");

The above splits the string on whitespace.


Use BufferedReader to read your file (or input stream) thusly.

Then use StringTokenizer to split each line into tokens thisly

I'm not providing a ready-to-use code here because I think you'd learn better by combining the above examples into a working code yourself.


How about using a Stringtokenizer to fetch each word?

import java.util.*;
public class ReverseWords {
    public static void main( String args[] ) {
        String s = "Go to the main menu. Quick!";
        StringTokenizer tokens = new StringTokenizer(s);
        StringBuffer ab;

        while (tokens.hasMoreTokens()){
            ab = new StringBuffer (tokens.nextToken());
            // do your processing
        }
        System.out.println();
    }
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜