java - Search String in Txt File -


we wrote code in class , i'm having trouble understanding/manipulating it. want modify take user input, instead of searching whole file, , print out position of word in file.

import java.io.bufferedreader; import java.io.datainputstream; import java.io.fileinputstream; import java.io.filenotfoundexception; import java.io.ioexception; import java.io.inputstreamreader; import java.util.arraylist; import java.util.collections; import java.util.comparator; import java.util.hashmap; import java.util.list; import java.util.map; import java.util.set; import java.util.stringtokenizer; import java.util.map.entry;  public class assingment7 {      public map<string, integer> getwordcount(string filename){          fileinputstream fis = null;         datainputstream dis = null;         bufferedreader br = null;         map<string, integer> wordmap = new hashmap<string, integer>();         try {             fis = new fileinputstream(filename);             dis = new datainputstream(fis);             br = new bufferedreader(new inputstreamreader(dis));             string line = null;             while((line = br.readline()) != null){                 stringtokenizer st = new stringtokenizer(line, " ");                 while(st.hasmoretokens()){                     string tmp = st.nexttoken().tolowercase();                     if(wordmap.containskey(tmp)){                         wordmap.put(tmp, wordmap.get(tmp)+1);                     } else {                         wordmap.put(tmp, 1);                     }                 }             }         } catch (filenotfoundexception e) {             e.printstacktrace();         } catch (ioexception e) {             e.printstacktrace();         } finally{             try{if(br != null) br.close();}catch(exception ex){}         }         return wordmap;     }      public list<entry<string, integer>> sortbyvalue(map<string, integer> wordmap){          set<entry<string, integer>> set = wordmap.entryset();         list<entry<string, integer>> list = new arraylist<entry<string, integer>>(set);         collections.sort( list, new comparator<map.entry<string, integer>>()         {             public int compare( map.entry<string, integer> o1, map.entry<string, integer> o2 )             {                 return (o2.getvalue()).compareto( o1.getvalue() );             }         } );         return list;     }      public static void main(string a[]){         assingment7 mdc = new assingment7();         map<string, integer> wordmap = mdc.getwordcount("c://fox.txt");         list<entry<string, integer>> list = mdc.sortbyvalue(wordmap);         for(map.entry<string, integer> entry:list){             system.out.println(entry.getkey()+" ==== "+entry.getvalue());         }     } } 

any thoughts?

you change main method - user enters string want search in console, , if key found in map, outputs the value associated it.

public static void main(string a[]) {     assingment7 mdc = new assingment7();     map<string, integer> wordmap = mdc.getwordcount("c://fox.txt");     list<entry<string, integer>> list = mdc.sortbyvalue(wordmap);      bufferedreader br = new bufferedreader(new inputstreamreader(system.in));      string input = null;      try {       input = br.readline();     } catch (ioexception e) {       system.out.println(e.getmessage());     }      for(map.entry<string, integer> entry:list) {         if(entry.getkey().equalsignorecase(input)){             system.out.println(entry.getkey() + " ==== " + entry.getvalue());         }     } } 

Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -