上傳本地文件到HDFS


源代碼:

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
public class UploadFile {
	public static void main(String[] args) throws IOException {
		Configuration conf = new Configuration();
		//conf.addResource(new Path("conf/hadoop-default.xml"));
		//conf.addResource(new Path("conf/hadoop-site.xml"));
		//通過conf來指定要操作的HDFS
		FileSystem hdfs = FileSystem.get(conf);
		//要上傳的源文件所在路徑
		Path src = new Path("D:\\v.txt");
		//hadoop文件系統的跟目錄
		Path dst = new Path("/");
		//將源文件copy到hadoop文件系統
		hdfs.copyFromLocalFile(src, dst);
		System.out.println("上傳到"+conf.get("fs.default.name"));
		FileStatus files[] = hdfs.listStatus(dst);
		for(int i=0;i<files.length;i++)
		{
			System.out.println(files[i].getPath());
		}
	}
}

還需要一個jar包:http://download.csdn.net/detail/lixiaolun/9227851

如果報Configuration錯誤,需要再下一個commons-logging.jar。網上隨便就能搜到。

還有現成的java代碼,不需要導入jar報:http://download.csdn.net/detail/lixiaolun/9227879


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM