hadoop创建文件,如文件存在则追加内容_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > hadoop创建文件,如文件存在则追加内容

hadoop创建文件,如文件存在则追加内容

 2015/1/8 18:21:58  qq346359669  程序员俱乐部  我要评论(0)
  • 摘要:publicstaticvoidcreateNewFile(Stringpath,Stringcontent,FileSystemfs)throwsException{Configurationconf=newConfiguration();conf.set("dfs.support.append","true");Pathd_path=newPath(path);FSDataOutputStreamos=null;if(fs.exists(d_path)){try{os=fs.append
  • 标签:创建 文件 内容 hadoop
class="java">
public static void createNewFile(String path, String content, FileSystem fs) throws Exception{
    	Configuration conf = new Configuration();
    	conf.set("dfs.support.append", "true");
        Path d_path = new Path(path);
        FSDataOutputStream os = null;
        if(fs.exists(d_path)){
        	try {
        		os = fs.append(d_path);
            	os.write(content.getBytes("UTF-8"));
			} catch (Exception e) {
				// TODO: handle exception
				appendFileContent(path, content, fs);
			}
        	
        }else{
        	os = fs.create(d_path);
            
            os.write(content.getBytes("UTF-8"));
            
        }
        if(os != null){
        	os.close();
        }
    }
    
    public static void appendFileContent(String path, String content, FileSystem fs) throws Exception{
    	Configuration conf = new Configuration();
    	Path d_path = new Path(path);
    	if(fs.exists(d_path)){
    		byte[] bytes = readHDFSFile(path);
    		FSDataOutputStream os = fs.create(d_path);
    		os.write(bytes);
    		os.write("\n".getBytes("UTF-8"));
    		os.write(content.getBytes("UTF-8"));
    		os.close();
    	}else{
    		createNewFile(path, content, fs);
    	}
    }
发表评论
用户名: 匿名