【发布时间】:2014-05-29 23:38:56
【问题描述】:
我的任务是在 Android(Java 平台)中使用 HTTP 协议下载和上传文件。
我正在使用以下代码上传文件:
HttpURLConnection httpURLConnection = (HttpURLConnection) serverUrl.openConnection();
....
httpURLConnection.connect();
OutputStream os = httpURLConnection.getOutputStream();
并使用以下代码下载文件:
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
...
urlConnection.connect();
DataInputStream stream = new DataInputStream(urlConnection.getInputStream());
根据我的观察,这两种情况的 connect() 都需要时间,因为此时它正在与网络通信。对于文件上传,getOutputStream() 执行得非常快,这是否意味着它没有与网络通信?
而 getInputStream()(在文件下载中)需要一些时间(大约 200 到 2500 英里秒)来执行。这是否意味着它此时正在与网络通信?如果是,那为什么会这样?
专家,如果我在任何地方有错误,请提供您的 cmet 并纠正我。
【问题讨论】:
标签: java android network-programming inputstream