`
Tony_Lee-S
  • 浏览: 82283 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

tomcat下载文件时,URL含有文字参数与空格参数出错(java.io.FileNotFoundException错误) 解决方法(转)

阅读更多

像这个例子  URL="http://10.0.2.2:8080/AndroidServer/Music/陈奕迅 - 浮夸.mp3 "这样的URL就无法通过,所以在“陈奕迅 - 浮夸.mp3”加上URL之前要经过一些处理。
         一般情况下,URL参数为文字和空格都会出现乱码,需经过编码后才能执行通过。
         下面介绍解决方法:
         1.修改tomcat里面的/conf/server.xml文件 找到<Connector port="8080" 节点。在里面
            加入URIEncoding="UTF-8" 属性编码  默认编码为"ISO-8859-1"一般情况下是不支持文字参数。
            修改后如下:
            <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="UTF-8"/>

        2.参数处理,URL="http://10.0.2.2:8080/AndroidServer/Music/陈奕迅 - 浮夸.mp3 "
            在参数   陈奕迅 - 浮夸.mp3   加入URL之前先进行处理,先对其进行编码
            例如:String mm="陈奕迅 - 浮夸.mp3";         
                     String ss=URLEncoder.encode(mm, "UTF-8");   //这里是讲String编码成UTF-8
                      System.out.println("ss="+ss);    
         //输出结果    ss=%E9%99%88%E5%A5%95%E8%BF%85%+-+E6%B5%AE%E5%A4%B8.mp3
         //其中空格被编码成  +   ;这样编码后空格编码还是有问题,需在处理,下面继续
                      ss=ss.replaceAll("\\+","%20");  //因为 +  符号在java是关键字符需要转义,不能直接用
                                                                      // %20  为空格的编码,这里替换掉,URL才不会报错
                      URL="http://10.0.2.2:8080/AndroidServer/Music/"+ss
                      这样URL的文字  空格参数问题就解决了。  
                      其实总的就两句话,修改tomcat配置,参数传之前先处理。

转自:http://www.eoeandroid.com/thread-115195-1-1.html

 

分享到:
评论

相关推荐

    java.io.FileNotFoundException: *****(Too many open files)

    在Java编程中,"java.io.FileNotFoundException: ***** (Too many open files)" 是一个常见的错误,意味着程序尝试打开的文件数量超过了操作系统的限制。这个错误通常出现在处理大量文件或长时间运行的程序中,尤其...

    System.IO.FileNotFoundException报错

    System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.ReportViewer.WinForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies....

    Android实现下载zip压缩文件并解压的方法(附源码)

    其实在网上有很多介绍下载文件或者解压zip文件的文章,但是两者结合的不多,所以这篇文章在此记录一下下载zip文件并直接解压的方法,直接上代码,文末有源码下载。 下载: import java.io.BufferedInputStream; ...

    解决docker日志挂载的问题

    关键是本地服务器没有写入的权限 关键看这里吧(Permission denied), 一直没有看正方,以为是配置... java.io.FileNotFoundException: logs/bandwidth.log.2019-04-25.log (Permission denied) at java.io.FileNotFou

    java.io包讲解

    ### Java.io包详解 #### 一、概述 Java.io包是Java编程语言中非常重要的一个标准库,它提供了丰富的类和接口,支持多种输入/输出流的处理方式,包括文件I/O、网络通信等场景。Java.io包的核心设计思想是以流...

    java.io的基础应用

    在Java中,IO操作主要分为字节流和字符流两大类,分别由`java.io.InputStream`和`java.io.OutputStream`以及`java.io.Reader`和`java.io.Writer`作为基类。字节流处理的是8位的字节,而字符流处理的是16位的Unicode...

    Java中文件IO流.pdf

    import java.io.*; public class FileIO { public static void main(String args[]) { try { File inFile = new File("infile.txt"); File outFile = new File("outfile.txt"); FileInputStream in = new ...

    xml2jsonjar包

    import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.util.ArrayList; ...

    大数据hadoop winutils.exe

    而针对Windows用户,开发和运行Hadoop应用时会遇到一个常见问题:“Did not find winutils.exe: java.io.FileNotFoundException”。这个错误是由于Hadoop在Windows环境下找不到`winutils.exe`文件所引起的。`...

    window 本地执行 hadoop 缺失的hadoop.dll 和 winutils.exe 文件

    Caused by: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset. at org.apache.hadoop.util.Shell.checkHadoopHomeInner(Shell.java:468) at org.apache.hadoop.util.Shell....

    java常见错误.pdf

    5. 文件不存在错误 (java.io.FileNotFoundException) 文件不存在错误是Java开发中另一个常见的错误。这种错误通常发生在访问文件时,例如读取或写入文件。如果文件不存在,将会抛出java.io.FileNotFoundException...

    java编写文本编辑器

    import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import javax.swing.JFileChooser; import javax.swing.JFrame; import javax.swing....

    java file,java读取txt文档

    在Java编程中,读取和操作TXT文档是常见的任务,特别是在处理日志、配置文件或者进行数据交换时。本文将详细讲解如何使用Java File类和相关的I/O流来实现这一功能。 首先,让我们理解`java file`的概念。在Java中,...

    JAVA常见的错误

    例如,在调用某些方法时,如果参数不正确,就会出现该错误。解决方法是检查代码,确保方法的参数是正确的。 6. java.lang.IllegalAccessException java.lang.IllegalAccessException 是一种常见的错误,发生在没有...

    北大青鸟java.io经典例子

    在Java编程语言中,`java.io`包是核心部分之一,它包含了用于输入/输出(I/O)操作的各种类和接口。北大青鸟的课程中,`java.io`的经典例子通常会涵盖基本的文件读写、流的使用、数据转换等关键概念。以下是基于这个...

    mchange-commons-java-0.2.19.jar

    c3p0依赖包mchange-commons-java-0.2.19.jar; 特别说明:c3p0(c3p0-0.9.5.5.bin.tgz)的lib包里面含此mchange-commons-java-0.2.19.jar文件。

    学生管理系统

    import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; ...

    java io读写文件

    在Java中,进行文件读写的操作通常涉及两个核心包:`java.io` 和 `java.nio`。这里我们主要关注 `java.io` 包,它提供了多种类来处理文件的读写操作,如`FileReader`, `FileWriter`, `BufferedReader`, 和 `...

    java调用winrar生成压缩文件路径有空格问题

    在Java中通过`Runtime.getRuntime().exec()`方法执行外部命令时,如果路径中包含空格,则该命令可能会被解释为多个参数,导致无法正确识别目标文件路径。例如,假设文件路径为"C:\Users\Documents\My Files\file.txt...

Global site tag (gtag.js) - Google Analytics