可以在 java 中file_path外部吗?我的意思是不是存储在PC硬盘中,而是存储在其他地方(例如:云,..)



假设我有文件对象:

File file = new File("file_path");

可以file_path外部吗?

例如,我想将文件存储在 S3 存储桶上; 所以,我检查了:

String file_path = "https://"+bucket+".s3.amazonaws.com/" + fileName + ".png";

但是没有用? 有什么建议吗?

提前感谢!

是和否。

不,因为java.io.File表示本地磁盘上的文件,不能表示其他任何内容,句点。

是的,在第一种方式中,File API 已被替换为具有称为文件系统的可插拔概念的java.nio.file.PathAPI;您可以实现表示 S3 存储桶的文件系统。这样做并非易事;如果您对此感兴趣,请在网络上搜索它。

是的,在第二种方式中,绝大多数Java库和API都采用InputStreamOutputStream,而不是File。您可以将文件转换为 IS 或操作系统,也可以将存储桶条目(无论是用于写入还是用于读取)转换为这样的事情。网络套接字、进程的标准输入和标准输出、DB blob 等等也是如此;IS和OS的要点是成为"按需提供字节流的源"和"向其发送字节流的源"的抽象。

相关内容

最新更新