package com.credi;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;
import org.apache.hadoop.conf.Configuration;
import org.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 TestHdfs {
public static void main(String[] args) throws Exception {
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
status_file(fs);
}
static void download_file(FileSystem fs ,Configuration conf) throws IOException {
Path path = new Path("/jc/hdfsAPI.txt");
File file = new File("d:/downloadToHdfs.txt");
FSDataInputStream in = fs.open(path);
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file));
IOUtils.copyBytes(in, out, conf);
}
static void upload_file(FileSystem fs , Configuration conf) throws IOException{
Path path = new Path("/hdfs/test/hdfsAPI.txt");
File file = new File("D:/hdfsAPI.txt");
BufferedInputStream in = new BufferedInputStream(new FileInputStream(file));
FSDataOutputStream out = fs.create(path);
IOUtils.copyBytes(new FileInputStream(file), out, conf);
}
static void mkdirs_file(FileSystem fs , String filename) throws IOException {
fs.mkdirs(new Path(filename));
}
static void delete_file(FileSystem fs) throws IllegalArgumentException, IOException{
fs.delete(new Path("/jc"), true);
}
static void status_file(FileSystem fs) throws Exception{
Path path = new Path("/hdfs");
FileStatus[] fileStatus = fs.listStatus(path);
for(FileStatus fstatus : fileStatus){
System.out.println(
"文件创建时间:" + new Date(fstatus.getAccessTime()) +
"文件修改时间:" + new Date(fstatus.getModificationTime()) +
"文件大小:" + fstatus.getBlockSize()/1024/1024 + "MB" +
"文件所有者:" + fstatus.getOwner()
);
}
}
}