Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何访问包含空格字符的文件';在使用java时,谁的名字?_Java_Linux_File_Exception_Filenotfoundexception - Fatal编程技术网

如何访问包含空格字符的文件';在使用java时,谁的名字?

如何访问包含空格字符的文件';在使用java时,谁的名字?,java,linux,file,exception,filenotfoundexception,Java,Linux,File,Exception,Filenotfoundexception,我无法访问名称中带有空格的文件 我的代码: String fileName = "This is my file.txt"; String path = "/home/myUsername/folder/"; String filePath = path + filename; f = new BufferedInputStream(new FileInputStream(filePath)); 我收到FileNotFoundException import java.io.BufferedI

我无法访问名称中带有空格的文件

我的代码:

String fileName = "This is my file.txt";
String path = "/home/myUsername/folder/";
String filePath = path + filename;
f = new BufferedInputStream(new FileInputStream(filePath));
我收到
FileNotFoundException

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class AccessMyFile {
    public static void main(String[] args) throws IOException {
        File file = new File("/home/This is my file.txt");
        System.out.println(file.exists());//true
        System.out.println(file.isFile());//true
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));
        while(bis.available()>0) {
            System.out.print((char)bis.read());
        }
    }//main
}//class
File:/home/这是我的File.txt

输出:

hello world

使用java.io.File检查是否存在。然后您就知道代码是否正常工作。

首先,参数fileName中有一个输入错误:

String **fileName** = "This is my file.txt";
    String filePath = path + **filename**;
以下是更新后的代码和您的示例:

  String fileName = "This is my file.txt";
            String path = File.separator + "home" + File.separator + "myUsername" + File.separator + "folder" + File.separator;
            String filePath = path + fileName;
            BufferedInputStream f = new BufferedInputStream(new FileInputStream(filePath));
我能够读取文件名中带有空格的文件

我们使用File.separator让代码替换基于 在操作系统上


请在添加新问题时通读此内容。文件是否实际存在?另外,请记住linux文件系统通常(始终?)区分大小写,因此
“这是我的文件。txt”
不同于
“这是我的文件。txt”
。可能是的副本,朋友。都德,我刚刚编写了一段代码并检查了它。我认为你的文件路径是错误的。