将缓存文件添加到job.addCacheFile()
的作业,然后使用context.getCacheFiles()
的映射器将其拉下来。如何打开缓存文件。我尝试过使用:
BufferedReader reader = new BufferedReader(new FileReader(filename));
(评论如下)
其中filename是toString()
的{{1}},但是我得到一个IOException,说该文件不存在。谁能帮我吗?
URI
这是代码问题还是配置问题?我正在运行一个假想的伪分布式集群
答案 0 :(得分:2)
你可以使用这样的东西
Path path = new Path(uri[0].getPath().toString());
if (fileSystem.exists(path)) {
FSDataInputStream dataInputStream = fileSystem.open(path);
byte[] data = new byte[1024];
while (dataInputStream.read(data) > 0) {
//do your stuff here
}
dataInputStream.close();
}