Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.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 有没有办法确定inputstream是否为只读?_Java_Inputstream - Fatal编程技术网

Java 有没有办法确定inputstream是否为只读?

Java 有没有办法确定inputstream是否为只读?,java,inputstream,Java,Inputstream,我在想一个 File File=new File(inputStream)//但不可能。file.canWrite 但我似乎找不到一个解决方案,可以将输入流转换成一个文件,而不将其写入其他地方。谢谢大家! 你好像把它倒过来了 根据定义,InputStream只允许您读取字节流,无论该字节流来自何处。它可能来自文件、网络套接字或自定义提供程序。根据其定义,您无论如何只能从InputStream读取 由于您似乎正在处理此处的文件,因此可以使用以下方法检查运行当前进程的用户的文件是否为只读: 要从路径

我在想一个

File File=new File(inputStream)//但不可能。file.canWrite


但我似乎找不到一个解决方案,可以将输入流转换成一个文件,而不将其写入其他地方。谢谢大家!

你好像把它倒过来了

根据定义,
InputStream
只允许您读取字节流,无论该字节流来自何处。它可能来自文件、网络套接字或自定义提供程序。根据其定义,您无论如何只能从
InputStream
读取

由于您似乎正在处理此处的文件,因此可以使用以下方法检查运行当前进程的用户的文件是否为只读:

要从
路径
打开
输入流
,请使用:

try (
    final InputStream in = Files.newInputStream(path);
) {
    // work with "in"
}

你想让事情倒退。你会不会做
InputStream is=newfileinputstream(新文件(“someFile.foo”)?或更好——将其全部封装在BufferedInputStreamHi fge中,感谢您的回复。我很感激。当前,我的方法接收一个DataHandler对象,该对象表示文件内容。我在想一种方法来确定数据处理程序中的内容文件是否为只读。@WayneDeLosAngeles:同样,这是逆向思维。您可以通过只读取而不写入来使其只读。@WayneDeLosAngeles您如何知道这个特定的
DataHandler
表示文件的内容?那是你的API吗?另一个API?是否强制将文件作为“后端”来提供
InputStream
?也许更重要的是,你为什么一开始就在乎?
try (
    final InputStream in = Files.newInputStream(path);
) {
    // work with "in"
}