java实现对hdfs文件系统的上传,下载,删除,创建文件夹的操作演示

来源:互联网 发布:linux malloc实现原理 编辑:程序博客网 时间:2024/05/01 11:56
<span style="font-size:18px;"><strong>/*** * 对hdfs文件系统的上传,下载,删除,创建文件夹的操作演示 */package itcast;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.URI;import java.net.URISyntaxException;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IOUtils;import org.junit.Before;import org.junit.Test;public class HDFSDemo {FileSystem fs = null;@Beforepublic void init() throws IOException, URISyntaxException, InterruptedException{//首先创建FileSystem的实现类(工具类)fs = FileSystem.get(new URI("hdfs://itcast01:9000"), new Configuration(), "root");}/** *  * info:上传本地文到hdfs上 * @throws IllegalArgumentException * @throws IOException */@Testpublic void testUpload() throws IllegalArgumentException, IOException{//读取本地文件系统的文件,返回输入流InputStream in = new FileInputStream("E://Test.jar");//在Hdfs上创建一个文件,返回输出流OutputStream out = fs.create(new Path("/test.jar"));//输入-》输出IOUtils.copyBytes(in, out, 4096, true);}/** * info:删除hdfs上文件 * @throws IllegalArgumentException * @throws IOException */@Testpublic void testDel() throws IllegalArgumentException, IOException{fs.delete(new Path("/Demo"), false);}/*** * info:在hdfs上创建文件夹 * @throws IllegalArgumentException * @throws IOException */@Testpublic void testMkdir() throws IllegalArgumentException, IOException{fs.mkdirs(new Path("/itcast0626/"));}public static void main(String[] args) throws IOException, URISyntaxException {// TODO Auto-generated method stubFileSystem fs = FileSystem.get(new URI("hdfs://itcast01:9000"), new Configuration());InputStream in = fs.open(new Path("/Demo"));OutputStream out = new FileOutputStream("E://Demo");IOUtils.copyBytes(in, out, 4096, true);}}</strong></span>

0 0
原创粉丝点击