Hadoop2.6.0的所有Java API都在 http://hadoop.apache.org/docs/r2.6.0/api/overview-summary.html 里。
下面实现一个利用Java API创建HDFS文件的例子。参照《实践Hadoop》(刘鹏) 书中的第50页。
利用FileSystem.create(Path f)实现
第一步,先写java代码, 命名为MyCreateFile.java 注意,一定要放在hadoop的根目录下
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
public class MyCreateFile{
public static void main(String[] args)throws Exception{
Configuration conf=new Configuration();
byte[] buff="hello wordl!".getBytes();
FileSystem hdfs=FileSystem.get(conf);
Path dfs=new Path("/user/kzy/new_file");
FSDataOutputStream outputStream=hdfs.create(dfs);
outputStream.write(buff,0,buff.length);
}
}
第二步,编译打包 在命令行中输入下面两个指令,打包为mcf.jar
bin/hadoop com.sun.tools.javac.Main MyCreateFile.java
jar cf mcf.jar MyCreateFile*.class
第三步,执行 在命令行中输入
bin/hadoop jar mcf.jar MyCreateFile
到http://localhost:50070 中查看结果 在/user/kzy 目录下出现了新文件new_file