概述
//core包中fs.FileSystem
String uri = "hdfs://192.168.1.240:9000/";//注意协议
Configuration conf = new Configration();
FileSystem fs = FileSystem.get(URI.create(uri),configuration);
//(1)创建文件夹:在根目录下创建文件夹
String pathString = "/d1";
boolean existts = fs.exists(new Path(pathString)); //判断一下要创建的文件目录是否存在:返回值是一个布尔类型
if(!exists){
boolean result = fs.mkdirs(new Path(pathString)); //创建一个文件夹
System.out.println(result); //输出一下是否创建成功
}
//(2)写文件,我们可以想HDFS写入文件
String pathString = "/d1/f1";
FSDataOutputStream fsDataOutPutStream = fs.create(new Path(pathString)); //返回值是一个通向HDFS的输出流
//Hadoop的工具类
IOUtils.copyBytes(new ByteArrayInputStream("this is outputStream from Java").getBytes(),fsDataOutPutStream,configuration,true);
//(3)读文件,我们可以把刚才写入到HDFS中的文件读出来
String pathString = "/d1/f1";
FSDataInputStream fsDataInputStream =fs.open(new Path(pathStrin)); //返回值是一个通向该文件的输入流
IOUtils.copyBytes(fsDataInputStream,System.out,configuration,true);
//(4)查看目录列表和文件详细信息
String pathString = "/";
FileStatus[ ] listStatus = fs.listStatus(new Path(pathString));
for(FileStatus fileStatus : listStatus){
String type = fileStatus.isDir( )?"目录":"文件";
//输出测试....
}
//(5)删除文件或者目录
明天继续...
最后
以上就是雪白灰狼为你收集整理的Hadoop总结:在java中使用FileSystem的api读写数据(能力工场)的全部内容,希望文章能够帮你解决Hadoop总结:在java中使用FileSystem的api读写数据(能力工场)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复