HDFS的Java API操作代码
2015-02-17 21:50
429 查看
HDFS的Java API操作代码
代码部分:
对应的HDFS 操作的变化:
1、创建一个文件夹:
或命令为:[hadoop@baolibinbin]$ hadoop fs -ls hdfs://192.168.1.100:9000/
2、上传文件:
3、下载文件:
4、浏览文件夹:
5、删除文件夹:
代码部分:
<pre name="code" class="java">package FileSystem; import java.io.FileInputStream; import java.io.IOException; import java.net.URI; importorg.apache.hadoop.conf.Configuration; importorg.apache.hadoop.fs.FSDataInputStream; import org.apache.hadoop.fs.FSDataOutputStream; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IOUtils; public class HDFS { static final String PATH="hdfs://192.168.1.100:9000/"; static final String DIR="hdfs://192.168.1.100:9000/dir"; static final String FILE="/dir/xiaobaozi"; public static void main(String args[]) throws Exception{ FileSystem fileSystem = getFileStstem(); //创建文件夹 // mkdir(fileSystem); //上传文件 // putData(fileSystem); //下载文件 // getData(fileSystem); //浏览文件夹 // list(fileSystem); //删除文件夹 remove(fileSystem); } privatestatic FileSystem getFileStstem() throws Exception { //TODO Auto-generated method stub Configuration conf=new Configuration(); URI uri=new URI(PATH); final FileSystem fileSystem=FileSystem.get(uri, conf); return fileSystem; } //创建文件夹 privatestatic void mkdir(FileSystem fileSystem) throws IOException{ fileSystem.mkdirs(newPath(DIR)); System.out.println("创建成功!"); } //上传文件 privatestatic void putData(FileSystem fileSystem) throws IOException{ final FSDataOutputStream out=fileSystem.create(new Path(FILE)); final FileInputStream in=new FileInputStream("D:/File_hdfs.txt"); IOUtils.copyBytes(in,out, 1024, true); System.out.println("上传成功!"); } //下载文件 privatestatic void getData(FileSystem fileSystem) throws IOException{ final FSDataInputStream in=fileSystem.open(new Path(FILE)); IOUtils.copyBytes(in,System.out,1024, true); System.out.println("下载文件!"); } //浏览文件夹 privatestatic void list(FileSystem fileSystem) throws IOException{ final FileStatus[] listStatus=fileSystem.listStatus(new Path("/")); for(FileStatus fileStatus:listStatus){ String isDir=fileStatus.isDir()?"文件夹":"文件"; final String permission=fileStatus.getPermission().toString(); final short replication=fileStatus.getReplication(); final long len=fileStatus.getLen(); final String path=fileStatus.getPath().toString(); System.out.println(isDir+"\t"+permission+"\t"+replication+"\t"+len+"\t"+path); } System.out.println("浏览文件夹!"); } //删除文件夹 privatestatic void remove(FileSystem fileSystem) throws IOException{ fileSystem.delete(newPath(DIR), true); System.out.println("删除文件夹!"); } }
对应的HDFS 操作的变化:
1、创建一个文件夹:
或命令为:[hadoop@baolibinbin]$ hadoop fs -ls hdfs://192.168.1.100:9000/
2、上传文件:
3、下载文件:
4、浏览文件夹:
5、删除文件夹:
相关文章推荐
- JAVA操作HDFS API(hadoop)
- HDFS的JAVA API操作
- JAVA操作HDFS API(hadoop) HDFS API详解
- Hadoop HDFS文件操作的Java代码
- 基于Elasticsearch2.1.1的JavaAPI基本操作代码示例
- HDFS的JavaAPI操作
- Java代码分析器(二)- 使用DOM API操作抽象语法树
- hadoop hdfs 常用操作java代码
- HDFS的Java API操作本地环境搭建
- HDFS的JAVA客户端编写(JAVA代码实现对HDFS的操作)
- hdfs 常用java API---代码篇(二)
- Hadoop Java API 操作 hdfs--1
- Hadoop HDFS文件操作的Java代码
- hadoop hdfs 常用操作java代码
- JAVA操作HDFS API(hadoop)
- JAVA操作HDFS API(hadoop)
- HDFS的JavaAPI操作
- HDFS的文件操作(Java代码实现)
- hadoop - hadoop2.6 伪分布式 - Java API 操作 HDFS
- JAVA API 实现hdfs文件操作