小标
2018-12-19
来源 :
阅读 1185
评论 0
摘要:本文主要向大家介绍了Java语言操作HDFS常用命令测试代码,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。
本文主要向大家介绍了Java语言操作HDFS常用命令测试代码,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。
package com.yxc.hdfs;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.*;
import org.apache.hadoop.io.IOUtils;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Date;
/**
* 测试HDFS的API
*
* @author yxc
* @create 2018-05-03 18:21
**/
public class TestHDFS04 {
private Configuration cf = null;
private FileSystem fs = null;
/**
* 获取配置信息,以及获取文件系统
*/
@Before
public void beforeRun() throws URISyntaxException, IOException, InterruptedException {
//获取配置信息
cf = new Configuration();
//获取文件系统
fs = FileSystem.get(new URI("hdfs://hadoop102:9000"), cf, "yxc");
}
/**
* 创建文件目录
*/
@Test
public void mkdir () throws IOException {
boolean mkdirs = fs.mkdirs(new Path("/input/"));
if (mkdirs) {
System.<em>out</em>.println("文件创建成功");
} else {
System.<em>out</em>.println("文件创建失败");
}
}
/**
* 判断目录是否存在
*/
@Test
public void isDirectory() throws IOException {
boolean directory = fs.isDirectory(new Path("/input/"));
if (directory) {
System.<em>out</em>.println("存在input 的这个目录");
} else {
System.<em>out</em>.println("不存在input的这个目录");
}
}
/**
* 删除文件或文件目录
*/
@Test
public void delete() throws IOException {
boolean delete = fs.delete(new Path("/input/"), true);
if (delete) {
System.<em>out</em>.println("成功删除");
} else {
System.<em>out</em>.println("删除失败");
}
}
/**
* 获取文件下的资源
*/
@Test
public void getFile() throws IOException {
RemoteIterator<locatedfilestatus> listFiles = fs.listFiles(new Path("/"), true);
if (listFiles == null) {
System.<em>out</em>.println("文件下没有资源");
} else {
System.<em>out</em>.println("文件下有资源");
}
while (listFiles.hasNext()) {
LocatedFileStatus file = listFiles.next();
if (file.isDirectory()) {
System.<em>out</em>.println("是文件夹");
} else {
System.<em>out</em>.println("是文件");
}
System.<em>out</em>.println("文件名:"+file.getPath().getName());
}
}
/**
* 上传文件
*/
@Test
public void upFile() throws IOException {
//配置信息
//获取文件系统
//获取输入流
FileInputStream inputStream = new FileInputStream(new File("D:/yue5.txt"));
//获取输出流
FSDataOutputStream outputStream = fs.create(new Path(<code class="java
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注编程语言JAVA频道!
喜欢 | 1
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号