編輯:關於Android編程
commons-codec-1.3.jar
commons-httpclient-3.1.jar
commons-logging-1.1.jar
1、在layout下的布局xml文件:
android:id="@+id/et_file_path"
android:layout_width="match_parent"
android:text="/mnt/sdcard/a.jpg"
android:layout_height="wrap_content" >
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="uploadfile"//指定按鈕點擊的事件
android:text="上傳文件" />
2、在activity類中的 上傳按鈕的點擊的方法
// 把sd卡上的文件上傳到服務器上
public voiduploadfile(View view){
//獲取被上傳文件的路徑
String filepath = et_file_path.getText().toString().trim();
if(TextUtils.isEmpty(filepath)){
Toast.makeText(this,"文件路徑不能為空", 0).show();
return ;
}
File file = new File(filepath);
if(file.exists()){//判斷上傳的文件是否存在
//獲取上傳文件的服務端的路徑
String path =getResources().getString(R.string.uploadurl);
//調用做上傳的方法;
String result =NetService.uploadfile(path, file);
if(result!=null){
Toast.makeText(this,result, 0).show();
}else{
Toast.makeText(this,"上傳文件失敗", 0).show();
}
}else{
Toast.makeText(this,"文件不存在", 0).show();
return ;
}
}
}
3、在service中做上傳的方法:
public static String uploadfile(String path, File file) {
try {
PostMethod filePost = newPostMethod(path);
//指定上傳的文件和參數
Part[] parts = { new StringPart("name","zhangsan"),
newStringPart("password", "123"),//參數
newFilePart("file", file) };//上傳的文件
//設置請求體
filePost.setRequestEntity(new MultipartRequestEntity(parts,
filePost.getParams()));
//創建httpClient對象
org.apache.commons.httpclient.HttpClient client = neworg.apache.commons.httpclient.HttpClient();
//設置超時時長5秒
client.getHttpConnectionManager().getParams()
.setConnectionTimeout(5000);
//執行
int status = client.executeMethod(filePost);
return "上傳成功";
}
catch (Exception e) {
return "上傳失敗";
}
finally {
//filePost.releaseConnection();
}
}
介紹 做項目到一定龐大的時候就會發現方法數太多,安裝包根本就裝不上去了,這個也不足為奇,我們都知道當方法數目超過65536這個數目限制的時候,擋在2.x的系統上面就會出現
一、 I2C簡介 I2C(Inter-Integrated Circuit)總線是一種由 Philips 公司開發的兩線式串行總線,用於連接微控制器及其外圍設備。I2
寫在前面的廢話 下載文件,幾乎是所有APP都會用到的功能!算了,還是不廢話了,直接開寫吧。。。 簡單使用 完成一個下載任務只需要4行代碼,什
手勢操作可以說是智能手機的一種魅力所在,前兩節給大家講解了兩種有趣的手勢操作,將它們置於游戲當中,大大提升了