package googleMap;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.io.*;
import java.util.*; 

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;


public class queryDistance {

	static final String GET_URL = "https://m...content-available-to-author-only...s.com/maps/api/distancematrix/xml?"; 

	public void query(String str1, String str2) throws IOException, DocumentException {
		// TODO 自動產生的方法 Stub
		// 拼湊get請求的URL字串，使用URLEncoder.encode對特殊和不可見字符進行編碼
		String origin_location = URLEncoder.encode(str1, "utf-8");
		String des_location = URLEncoder.encode(str2, "utf-8");
		String getURL = GET_URL + "origins=" + origin_location + "&destinations=" + des_location + "&language=zh_TW&sensor=false";

		URL getUrl = new URL(getURL); 
		// 根據拼湊的URL，打開連接，URL.openConnection函數會根據URL的類型， 
		// 返回不同的URLConnection子類的對象，這裏URL是一個http，因此實際返回的是HttpURLConnection 
		HttpURLConnection connection = (HttpURLConnection) getUrl.openConnection(); 
		// 進行連接，但是實際上get request要在下一句的connection.getInputStream()函數中才會真正發到 
		// 服務器 
		connection.connect(); 
		// 取得輸入流，並使用Reader讀取 
		
		BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(),"utf-8"));//設置編碼,否則中文亂碼 
		System.out.println("============================="); 
		System.out.println("Contents of get request"); 
		System.out.println("============================="); 
		String lines; 
		while ((lines = reader.readLine()) != null){ 
			//lines = new String(lines.getBytes(), "utf-8"); 
			System.out.println(lines); 
		} 
		reader.close(); 
		// 斷開連接 
		connection.disconnect(); 
		System.out.println("============================="); 
		System.out.println("Contents of get request ends"); 
		System.out.println("=============================");
	
	}