Link to home
Start Free TrialLog in
Avatar of ezsas
ezsasFlag for Canada

asked on

BufferedWriter , OutputStreamWriter

I am trying to display the the contents of the web page by capturing the output stream.Now the next task is to display the output stream on to console but i am able to get the result as 'java.io.BufferedWriter@14693c7'.
Please guide me what more has to be done in order to display the exact contents of java.io.BufferedWriter@14693c7.

Also tell me how to attach the string strLine with the url, such that when a call to maps.google page is made it should return me the results matching the search criteria.

import java.io.*;
import java.net.*;
import java.util.*;

import com.google.soap.search.GoogleSearch;
import com.google.soap.search.GoogleSearchFault;
import com.google.soap.search.GoogleSearchResult;
import com.google.soap.search.GoogleSearchResultElement;


public class GoogleAPIDemo {
 
  public static void main(String[] args) {
    
    String clientKey ="ABQIAAAA9yfTk5uonWwTfSQcspv6RxTRERdeAiwZ9EeJWta3L_JZVS0bOBTj77GRHnxizMyOhrkoMMDwH9affg";
    String directive = "search"; 
    String directiveArg ="" ;
    // Report the arguments received
    System.out.println("Parameters:"); 
    System.out.println("Client key = " + clientKey);
    System.out.println("Directive  = " + directive);
    System.out.println("Args       = " + directiveArg);

    // Create a Google Search object, set our authorization key
    GoogleSearch search = new GoogleSearch();
    search.setKey(clientKey);
    
    //reading input data from a file
    try {
    FileInputStream fstream = new FileInputStream("list.txt");
    // Get the object of DataInputStream
    DataInputStream in = new DataInputStream(fstream);
        BufferedReader br = new BufferedReader(new InputStreamReader(in));
    String strLine;
    //Read File Line By Line
    while ((strLine = br.readLine()) != null)  
    {
      // Print the content on the console
      System.out.println (strLine);
      // Depending on user input, do search or cache query, then print out result
        if (directive.equalsIgnoreCase("search"))
        {
         search.setQueryString(strLine);
         String temp =strLine;
         URL url = new URL("http://maps.google.com");
         Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("proxy.xxx.com", 8080));
         System.out.println("url is "+url);
         
         URLConnection con = url.openConnection(proxy);
         con.setDoInput(true);
         con.setDoOutput(true);
         con.connect();
         BufferedWriter bw1 = new BufferedWriter(new OutputStreamWriter(con.getOutputStream()));
 		
 	System.out.println("Buffered Writer contents----"+bw1.toString());
 	}
    //Close the input stream
      in.close();
    } 
      catch (GoogleSearchFault f) {
      System.out.println("The call to the Google Web APIs failed:");
      System.out.println(f.toString());
    }
      catch (Exception e){//Catch exception if any
          System.err.println("Error: " + e.getMessage());
        }
  }

  private static void printUsageAndExit() {
    System.err.println("Usage: java " + 
                       GoogleAPIDemo.class.getName() +
                       " <client-key>" +
                       " (search <query> | cached <url> | spell <phrase>)");
    System.exit(1);
  }
}

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of CEHJ
CEHJ
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
:)