FileInputStream fis = new FileInputStream(path + "myfile.txt");如果我的path有空格,则会失败,请问如何处理比较好。

解决方案 »

  1.   

    app.path 不就是应用程序的路径吗,不会有空格吧。
      

  2.   

    原来是我path路径有中文得问题,用System.out.println结果如下:
    D:/WORK_VSS/%e8%af%ad%e9%9f%b3%e4%ba%a7%e5%93%81/04%20%e4%bc%a0%e7%9c%9f%e6%9c%8d%e5%8a%a1%e5%99%a8/01%20%e5%bc%80%e5%8f%91%e5%9f%ba%e7%ba%bf/02%20%e6%9c%8d%e5%8a%a1%e7%ab%af/01%20%e4%bb%a3%e7%a0%81/请教如何还原成有中文的路径,完整代码如下String path = GlobalVar.class.getResource("GlobalVar.class").getPath();
    System.out.println(path);  //这里打印出来的不是中文路径
    path = path.substring(0,path.length() -
                       "com.raymond.util.Globalvar.class".length());FileInputStream fis = new FileInputStream(path + "myfile.txt");谢谢
      

  3.   

    path=new String(path.getBytes(),"utf-8")试试
      

  4.   

    URLDecoder.decode("D:/WORK_VSS/%e8%af%ad%e9%9f%b3%e4%ba%a7%e5%93%81/04%20%e4%bc%a0%e7%9c%9f%e6%9c%8d%e5%8a%a1%e5%99%a8/01%20%e5%bc%80%e5%8f%91%e5%9f%ba%e7%ba%bf/02%20%e6%9c%8d%e5%8a%a1%e7%ab%af/01%20%e4%bb%a3%e7%a0%81","utf-8")
    出来就是你要的:
    D:/WORK_VSS/语音产品/04 传真服务器/01 开发基线/02 服务端/01 代码*************
    *  葵花点穴手  *
    *************
      

  5.   

    应该是path=new String(path.getBytes(),"gbk")