0
我有我的電腦上運行的c#程序監聽http請求,我試圖做一個應用程序,從我的電腦通過HttpGet獲取文件。如何通過HttpGet從本地網絡上的電腦上獲取文件android
new HttpGet(url + filepath);
該文件在同一目錄和路徑是C://Users/abc/def/test.txt
,但如果我寫這篇文章給我的文件路徑不能獲取文件。我應該寫什麼文件路徑?
在此先感謝
我有我的電腦上運行的c#程序監聽http請求,我試圖做一個應用程序,從我的電腦通過HttpGet獲取文件。如何通過HttpGet從本地網絡上的電腦上獲取文件android
new HttpGet(url + filepath);
該文件在同一目錄和路徑是C://Users/abc/def/test.txt
,但如果我寫這篇文章給我的文件路徑不能獲取文件。我應該寫什麼文件路徑?
在此先感謝
您需要創建的AsyncTask做你的要求「原因,因爲Android蜂窩,不能添加在主線程網絡請求。
下面是一個例子:
private class HttpGetter extends AsyncTask<URL, Void, Void> {
@Override
protected Void doInBackground(URL... urls) {
// TODO Auto-generated method stub
StringBuilder builder = new StringBuilder();
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(urls[0]);
try {
HttpResponse response = client.execute(httpGet);
StatusLine statusLine = response.getStatusLine();
int statusCode = statusLine.getStatusCode();
if (statusCode == 200) {
HttpEntity entity = response.getEntity();
InputStream content = entity.getContent();
BufferedReader reader = new BufferedReader(
new InputStreamReader(content));
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
}
Log.v("Getter", "Your data: " + builder.toString()); //response data
} else {
Log.e("Getter", "Failed to download file");
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
HttpGetter get = new HttpGetter();
get.execute("http://192.168.1.2/song.mp3");
我正在做這樣的我已經創建的AsyncTask,但我不知道哪裏是Song.mp3的文件是在同一目錄?我試過,但它沒有得到具有相同目錄的文件,並以這種方式寫入 – mystery
您必須創建一個'File'並將其存儲在'getExternalStorage()/文件夾' – marshallino16
我知道android端可以處理它。我知道我的電腦上的文件路徑,但我怎麼能寫的文件路徑到Android程序來獲取該文件 – mystery