編輯:關於Android編程
面試中有一個題目是發送(接受)xml,並解析。
當時有接觸但是沒有注意,所以回來強力關注下,並且記錄在這,大家一起學習下:
[java]
public static StringBuffer sendSoapMsg(String soapMessage,
String targetUrl, String soapAction, Long timeout) throws Exception
{
busLogger.enterFuncDebugLog(soapMessage, soapAction, targetUrl, timeout);
//保存響應消息
HttpURLConnection conn = null;
BufferedReader bf = null;
StringBuffer sb = new StringBuffer();
try
{
URL url = new URL(targetUrl);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.addRequestProperty("SOAPAction", soapAction);
conn.addRequestProperty("Content-type", "text/xml; charset=UTF-8");
//默認超時時間30秒
conn.setConnectTimeout(timeout.intValue());
//將發送請求參數寫入到http請求中
conn.getOutputStream().write(soapMessage.getBytes());
conn.getOutputStream().flush();
conn.getOutputStream().close();
//從服務器獲取響應結果
InputStream in = conn.getInputStream();
//從服務器讀取結果
bf = new BufferedReader(new InputStreamReader(in));
String s = null;
while ((s = bf.readLine()) != null)
{
sb.append(s);
}
}
catch (Exception e)
{
busLogger.excepFuncDebugLog(e);
throw e;
}
finally
{
if (null != bf)
{
try
{
bf.close();
}
catch (IOException e)
{
busLogger.excepFuncDebugLog(e);
}
}
if (conn != null)
{
conn.disconnect();
}
}
busLogger.exitFuncDebugLog(sb.toString());
return sb;
}
public static StringBuffer sendSoapMsg(String soapMessage,
String targetUrl, String soapAction, Long timeout) throws Exception
{
busLogger.enterFuncDebugLog(soapMessage, soapAction, targetUrl, timeout);
//保存響應消息
HttpURLConnection conn = null;
BufferedReader bf = null;
StringBuffer sb = new StringBuffer();
try
{
URL url = new URL(targetUrl);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.addRequestProperty("SOAPAction", soapAction);
conn.addRequestProperty("Content-type", "text/xml; charset=UTF-8");
//默認超時時間30秒
conn.setConnectTimeout(timeout.intValue());
//將發送請求參數寫入到http請求中
conn.getOutputStream().write(soapMessage.getBytes());
conn.getOutputStream().flush();
conn.getOutputStream().close();
//從服務器獲取響應結果
InputStream in = conn.getInputStream();
//從服務器讀取結果
bf = new BufferedReader(new InputStreamReader(in));
String s = null;
while ((s = bf.readLine()) != null)
{
sb.append(s);
}
}
catch (Exception e)
{
busLogger.excepFuncDebugLog(e);
throw e;
}
finally
{
if (null != bf)
{
try
{
bf.close();
}
catch (IOException e)
{
busLogger.excepFuncDebugLog(e);
}
}
if (conn != null)
{
conn.disconnect();
}
}
busLogger.exitFuncDebugLog(sb.toString());
return sb;
}。其中的String內容為xml格式的。
概述 今天這篇博客將記錄一些關於DrawerLayout的基本用法,我想關於DrawerLayou
Android設置鬧鐘並不像IOS那樣這麼簡單,做過Android設置鬧鐘的開發者都知道裡面的坑有多深。下面記錄一下,我解決Android鬧鐘設置的解決方案。主要問題1、
最近看到DrawerLayout,support v4中提供的類,想到對google提供的這些支持庫,自己一點都不熟悉,想著看看Google提供的支持庫都有什麼內容。結果
動態加載是什麼應用在運行的時候通過加載一些本地不存在的可執行文件實現一些特定的功能,Android中動態加載的核心思想是動態調用外部的Dex文件,極端的情況下,Andro