在将android应用程序连接到服务器时执行conn.getInputStream()时获取fileNotFoundException
当我通过android代码连接到服务器时,我收到了文件NotFoundException。 下面一行是抛出异常在将android应用程序连接到服务器时执行conn.getInputStream()时获取fileNotFoundException,android,Android,当我通过android代码连接到服务器时,我收到了文件NotFoundException。 下面一行是抛出异常 URL url = new URL(PhpFileUrlConstants.PHP_FILE_BASE_URL + PhpFileUrlConstants.INSERT_DOC_INFO_PHP); URLConnection conn = url.openConnection(); conn.setDoOutput(true);
URL url = new URL(PhpFileUrlConstants.PHP_FILE_BASE_URL + PhpFileUrlConstants.INSERT_DOC_INFO_PHP);
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data.toString());
// wr.flush();
// wr.close();
BufferedReader reader = null;
try {
// conn.setDoInput(true);
reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
日志类别:
07-12 02:48:11.960:W/System.err(2206):java.io.FileNotFoundException:
07-12 02:48:11.980:W/System.err(2206):位于libcore.net.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:186)
07-12 02:48:12.002:W/System.err(2206):位于com.chlorodots.yourdoc.tasks.DoctorRegistrationTask.doInBackground(DoctorRegistrationTask.java:78)
07-12 02:48:12.010:W/System.err(2206):位于com.chlorodots.yourdoc.tasks.DoctorRegistrationTask.doInBackground(DoctorRegistrationTask.java:1)
07-12 02:48:12.030:W/System.err(2206):在android.os.AsyncTask$2.call(AsyncTask.java:287)
07-12 02:48:12.041:W/System.err(2206):位于java.util.concurrent.FutureTask.run(FutureTask.java:234)
07-12 02:48:12.050:W/System.err(2206):在android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
07-12 02:48:12.061:W/System.err(2206):位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
07-12 02:48:12.081:W/System.err(2206):位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
07-12 02:48:12.090:W/System.err(2206):位于java.lang.Thread.run(Thread.java:841)
07-12 02:48:52.503:D/dalvikvm(403):GC_FOR_ALLOC freed 512K,20%free 3013K/3752K,暂停74ms,总计74msURLConnection的棘手之处在于,在尝试获取输入流之前,它不会尝试连接和写入。所以您认为异常在getInputStream,但实际上它尝试连接。由于存在FileNotFoundException,您可以断定url无效。使用浏览器可以获得一个页面,但该页面可能会被重定向。好了,现在是…现在哪一行抛出ececcption?conn.getInputStream()Place conn.setDoInput(true);在声明流之前。所以在开始的时候。我也试过了,但我们不能这样做,因为它显示连接已经打开了…而且。。那么,异常不是在连接时,而是在尝试读取时。