【问题标题】:FileNotFoundException at URLURL 处的 FileNotFoundException
【发布时间】:2014-10-30 09:40:30
【问题描述】:

我正在尝试从 php url 获取请求。运行时发生未找到文件异常。我在下面的代码中提到了错误行。Stacktrace 似乎没有从 url 获得响应。

堆栈跟踪:

10-30 05:57:23.000: D/URL(2735): Connectionhttp://example.php

10-30 05:13:37.600: W/System.err(2577): java.io.FileNotFoundException: http://myapi.phpBa
10-30 05:13:37.600: W/System.err(2577):     at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:186)
10-30 05:13:37.600: W/System.err(2577):     at com.manishkpr.autotextviewexample.JsonParse.getParseJsonWCF(JsonParse.java:32)
10-30 05:13:37.610: W/System.err(2577):     at com.manishkpr.autotextviewexample.SuggestionAdapter$1.performFiltering(SuggestionAdapter.java:39)
10-30 05:13:37.610: W/System.err(2577):     at android.widget.Filter$RequestHandler.handleMessage(Filter.java:234)
10-30 05:13:37.610: W/System.err(2577):     at android.os.Handler.dispatchMessage(Handler.java:102)
10-30 05:13:37.610: W/System.err(2577):     at android.os.Looper.loop(Looper.java:136)
10-30 05:13:37.610: W/System.err(2577):     at android.os.HandlerThread.run(HandlerThread.java:61)

JSONParse.java:

public List<SuggestGetSet> getParseJsonWCF(String sName)
        {
         List<SuggestGetSet> ListData = new ArrayList<SuggestGetSet>();
         try {
            String temp=sName.replace(" ","%20");
            URL js = new URL("example.php"+temp);

            Log.d("URL","Connection"+js);

            URLConnection urlConnection  = js.openConnection();
            BufferedReader reader = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));  ---32 nd line
            String line = reader.readLine();
            JSONObject jsonResponse = new JSONObject(line);
            JSONArray jsonArray = jsonResponse.getJSONArray("search");
            for(int i = 0; i < jsonArray.length(); i++){
                JSONObject r = jsonArray.getJSONObject(i);
                ListData.add(new SuggestGetSet(r.getString("id"), 
r.getString("name")));
            }
        } catch (Exception e1) {

            e1.printStackTrace();
        }
         return ListData;

        }

【问题讨论】:

  • 您访问的网址是否有效??
  • 网址正常工作。那不是我的网址。我没有显示它。这是一个例子@Panther
  • 临时变量中有什么
  • @raj 如果我搜索前两个字母,它会通过 url 显示一个自动完成列表视图
  • **//192.123.1.10/public/v1/tab/example.phpBa ** 就是你要访问的那个!

标签: java android


【解决方案1】:

尝试替换此行

String temp=sName.replace(" ","%20");
URL js = new URL("http://192.11.my api.php"+temp);

String temp=URLEncoder.encode("http://192.11.my api.php/"+sName, "UTF-8");
URL js = new URL(temp);

【讨论】:

  • 如果我这样做,我会收到格式错误的 url 异常
  • 请检查您的 IP 地址,它通常不正确,它看起来像 192.168.1.122 但您的只是 192.11 ,您可以调试它并发布您在临时变量中获得的 url
  • 网址正常工作。那不是我的网址。我没有显示它。这是一个例子。我已编辑并发布日志。d
  • 在 php 之后你应该有 / 这就是我希望你做的
  • 你很棒。添加 / 后工作正常。谢谢
猜你喜欢
  • 2017-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-20
  • 2012-03-13
  • 2012-09-20
相关资源
最近更新 更多