Monday, January 14, 2013

Find and Replace



This program reads from a text file and replaces with the string and writes it to a different file..


import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
public class XMLFindReplace {
 public static void main(String[] args) {
  String sRepPar = ("C:\\a\\ReplacementTag.txt");
  String strLineRepTag = "";
  String newString = "";
  try {
   FileInputStream fstream = new FileInputStream(sRepPar);
   DataInputStream in = new DataInputStream(fstream);
   BufferedReader br = new BufferedReader(new InputStreamReader(in));
   while ((strLineRepTag = br.readLine()) != null) {
     System.out.println("strLineRepTag: " + strLineRepTag);
   }
   br.close();
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  String sFilename = ("C:\\a\\Report20121227081203.txt");
  try {
   FileInputStream fstream = new FileInputStream(sFilename);
   DataInputStream in = new DataInputStream(fstream);
   BufferedReader br = new BufferedReader(new InputStreamReader(in));
   String strLine ="";
   int count = 0;
   boolean found;
   FileWriter fstreamWrite = new FileWriter("c:\\a\\out_Report20121227081203.txt", true);
   BufferedWriter out = new BufferedWriter(fstreamWrite);
   while ((strLine = br.readLine()) != null) {
    found = strLine.contains("<grid></grid>");
    if (found == true) {
     System.out.println(count + "" + " found " + found);
     count++;
     newString = strLine.replaceAll("<grid></grid>", "<grid><Lasdtud type=\"Decimal\">41.2</Latud></ttlTmRank></grid>");
   
      out.write(newString);
      out.write("\n");
    }
    else if (found == false){
    out.write(strLine);
    out.write("\n");
    }
   }
   br.close();
   out.close();
   System.out.println("Total Lines: " + count);
   System.out.println(newString);
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }
 }
}