private String fidString = "test01.mp4";public voiddoUpload()
{//要上传的文件
String pathString = FileManager.getParentDirectory()+"media/video_3_20141222145045024.mp4"; //video_3_20141222145045024.mp4 video_3_20141224153340976.mp4//上传的地址
String acceptUrl = "http://10.0.10.3/flyguard/mobileapi/file_up.php?fid="+this.fidString+"&pos=&ext=mp4";
RandomAccessFile raf= null;try{
raf= new RandomAccessFile(pathString, "r");long alllength=raf.length();
raf.seek(0); //指针编移量,断点续传用到
byte[] buffer = new byte[128*1024];//128k
int count = 0;while ((count = raf.read(buffer)) != -1)
{//count = raf.read(buffer);//String result = uploadFil(acceptUrl,buffer);//System.out.println("MediaActivity doUpload return:"+result+ " count:"+count);//break;
String result=PostFileData(acceptUrl,buffer);
System.out.println("MediaActivity doUpload return:"+result+ " count:"+count);
}
}catch(Exception e)
{
e.printStackTrace();
}finally{try{if(raf!=null)
raf.close();
}catch(IOException e)
{//TODO Auto-generated catch block
e.printStackTrace();
}
}
}/** 提交 的url Url
* 上传 数据 data
**/
public String PostFileData(String Url,byte[] data)
{try{
HttpURLConnection conn= (HttpURLConnection) newURL(Url).openConnection();
conn.setConnectTimeout(20 * 1000);
conn.setRequestMethod("POST");
conn.setDoOutput(true);//允许对外输出数据
conn.setRequestProperty("Content-Type", "application/octet-stream");
conn.setRequestProperty("Content-Length", String.valueOf(data.length));
OutputStream outStream=conn.getOutputStream();
outStream.write(data);
String Response="";if (conn.getResponseCode() == 200)
{
BufferedReader reader= new BufferedReader(newInputStreamReader(conn.getInputStream()));
String line;while ((line = reader.readLine()) != null)
{
Response+=line;
}
}returnResponse;
}catch(Exception e)
{
Log.e("PostFileData", e.getMessage());
FileManager.saveError("PostFileData", e);
}finally{return "";
}
}