JAVA-文件操作工具类

文件操作工具类

/********************************************
 * 文件操作工具类
 *
 * @author p.ww
 *********************************************/

import java.io.*;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

import org.apache.commons.compress.archivers.ArchiveInputStream;
import org.apache.commons.compress.archivers.ArchiveStreamFactory;
import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
import org.apache.commons.compress.compressors.bzip2.BZip2CompressorInputStream;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


public class FileUtils {
	
	/**
	 * 读文件
	 *
	 * @param filePath 读取文件路径
	 * @return 返回字符串
	 */
	public static String readTxtFile(String filePath) {
		File file = new File(filePath);
		if (!file.exists()) {
			return null;
		}
		StringBuffer stringBuffer = null;
		BufferedReader bufferedReader = null;
		try {
			bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "GBK"));
			stringBuffer = new StringBuffer();
			String line = null;
			while ((line = bufferedReader.readLine()) != null) {
				if ("\r".equals(line)) {
					continue;
				}
				stringBuffer.append(line).append("\n");
			}
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		} finally {
			closeBufferedReader(bufferedReader);
		}
		return stringBuffer.toString();
	}

	/**
	 * 关闭文件流
	 *
	 * @author Lius
	 * @date 2018/10/26 16:32
	 */
	public static void closeBufferedReader(BufferedReader bufferedReader) {
		if (bufferedReader != null) {
			try {
				bufferedReader.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}

	/**
	 * 写文件
	 * @param fileName
	 * @param content
	 * @return
	 */
	public static int writeFile(String fileName, byte[] content) {
		File file = new File(fileName);
		File fileparent = file.getParentFile();
		if (!fileparent.exists()) {
			System.out.println("文件夹不存在!");
//			fileparent.mkdirs();
		}
		FileOutputStream os = null;
		try {
			os = new FileOutputStream(fileName);
			os.write(content);
			os.flush();

		} catch (Exception e) {
			System.out.println("写入文件异常:" + e.getMessage());
			return -1;
		} finally {
			try {
				if (null != os)
					os.close();
			} catch (IOException e) {
			}
		}
		os = null;
		return 0;
	}

	/**
	 * 获取windows/linux的项目根目录
	 * @author p.ww
	 * @return
	 */
	public static String getConTextPath(){
		String fileUrl = Thread.currentThread().getContextClassLoader().getResource("").getPath();
		if("usr".equals(fileUrl.substring(1,4))){
			fileUrl = (fileUrl.substring(0,fileUrl.length()-16));//linux
		}else{
			fileUrl = (fileUrl.substring(1,fileUrl.length()-16));//windows
		}
		return fileUrl;
	}
	
}
发布了16 篇原创文章 · 获赞 15 · 访问量 1045

猜你喜欢

转载自blog.csdn.net/MarchRS/article/details/104501536