HTTP错误:java.lang.IllegalArgumentException: Illegal character in scheme at index 0: http://xxxxxx...

读取T卡文件里的域名,HTTP请求出现如下错误

java.lang.IllegalArgumentException: Illegal character in scheme at index 0: http://xxxxxxxxxxx
at java.net.URI.create(URI.java:727)
at org.apache.http.client.methods.HttpPost.<init>(HttpPost.java:84)

......

出现该错误时,读取域名的代码如下

protected String getFileContent(File file) {
        String content  = "";
        if (file.isDirectory() ) {    //检查此路径名的文件是否是一个目录(文件夹)
            Log.i("zeng", "The File doesn't not exist "
                +file.getName().toString()+file.getPath().toString());   
        } else {
            if (file.getName().endsWith(".txt")) {//文件格式为txt文件
                try {
                    InputStream instream = new FileInputStream(file); 
                    if (instream != null) {
                        InputStreamReader inputreader
                            =new InputStreamReader(instream, "UTF-8");
                        BufferedReader buffreader = new BufferedReader(inputreader);
                        String line="";
                        //分行读取
                       while (( line = buffreader.readLine()) != null) {
                            content += line + "\n";
                        }                
                        instream.close();        //关闭输入流
                    }
                }
                catch (java.io.FileNotFoundException e) {
                    Log.d("TestFile", "The File doesn't not exist.");
                } 
                catch (IOException e)  {
                     Log.d("TestFile", e.getMessage());
                }
            }
        }
        return content ;
    }
View Code

 

修改为如下方法后,HTTP请求正常

private static String getFileContent(File file) {
        String content = "";
        try {
            FileInputStream fin = new FileInputStream(file);
            int length;
            length = fin.available();
            byte [] buffer = new byte[length];   
            fin.read(buffer);       
            content = EncodingUtils.getString(buffer, "UTF-8");   
            fin.close();      
            return content;
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }   
        return content;
    }
View Code

 

转载于:https://www.cnblogs.com/suxiaoqi/p/9762005.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值