GTU OOP Program - 25
25). Write a program that reads words from a text file and displays all the nonduplicate words in descending order.The text file is passed as a command-line argument.
import java.io.*; import java.util.*; class Program_25 { public static void main(String[] args) throws Exception { File fin = new File(args[0]); BufferedReader br = new BufferedReader(new FileReader(fin)); StringBuffer buffer = new StringBuffer(); String str; while ((str = br.readLine()) != null) { // reading the text file buffer.append(str); // storing text in StringBuffer buffer.append(" "); // Separating words by spaces } ArrayList list = new ArrayList(); // Declaring ArrayList StringTokenizer st = new StringTokenizer(buffer.toString().toLowerCase()); while (st.hasMoreTokens()) { // creating a list of words String s = st.nextToken(); list.add(s); } HashSet set = new HashSet(list); // it is created to avoid duplicate List arrayList = new ArrayList(set); // creating list of words Comparator c = Collections.reverseOrder(); Collections.sort(arrayList, c); for (Object obj : arrayList) { System.out.println(obj.toString()); // displaying content } } }
Input.txt file
Output
Comments