hadoop可以从命令行上使用hadoop fs [command]来读取文件系统中的文件。同时也可以使用java接口来实现这些功能。
刚写好了一个权威指南上的例子,附上代码:
package baseOperation;
import java.io.InputStream;
import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.*;
import org.apache.hadoop.io.IOUtils;
public class FileSystemCat {
public static void main(String[] args) throws Exception{
String uri = "hdfs://localhost/user/root/Esther/pome";
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(URI.create(uri),conf);
InputStream in = null;
try{
in = fs.open(new Path(uri));
IOUtils.copyBytes(in,System.out,4096,false);
}finally{
IOUtils.closeStream(in);
}
}
}
在导入hadoop 的conf文件、一些jar包信息之后,编译出错:
Could not find or load main class baseOperation.FileSystemC