java读写⽂件⼯具类_JAVAFileUtils(⽂件读写以及操作⼯具
类)
第⼀个链接不到了作者看见了说⼀下我给你上链接(但是你的名字信息没改哈!!)
package com;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.URLEncoder;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
/**
*
⽂件操作⼯具类
* @version 1.0
* @author li_hao
* @date 2017年1⽉18⽇
*/
@SuppressWarnings({"resource","unused"})
public class FileUtils {
/
**
* 获取windows/linux的项⽬根⽬录
* @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;
}
/**
* 字符串转数组
* @param str 字符串
* @param splitStr 分隔符
* @return
*/
public static String[] StringToArray(String str,String splitStr){
String[] arrayStr = null;
if(!"".equals(str) && str != null){
if(str.indexOf(splitStr)!=-1){
arrayStr = str.split(splitStr);
}else{
arrayStr = new String[1];
arrayStr[0] = str;
}
}
return arrayStr;
}
/**
* 读取⽂件
*
* @param Path
* @return
*/
public static String ReadFile(String Path) {
BufferedReader reader = null;
String laststr = "";
try {
FileInputStream fileInputStream = new FileInputStream(Path);
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8");
reader = new BufferedReader(inputStreamReader);
String tempString = null;
while ((tempString = adLine()) != null) {
laststr += tempString;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return laststr;
}
/**
* 获取⽂件夹下所有⽂件的名称 + 模糊查询(当不需要模糊查询时,queryStr传空或null即可)
* 1.当路径不存在时,map返回retType值为1
* 2.当路径为⽂件路径时,map返回retType值为2,⽂件名fileName值为⽂件名
* 3.当路径下有⽂件夹时,map返回retType值为3,⽂件名列表fileNameList,⽂件夹名列表folderNameList * @param folderPath 路径
* @param queryStr 模糊查询字符串
* @return
*/
public static HashMap getFilesName(String folderPath , String queryStr) {
HashMap map = new HashMap<>();
List fileNameList = new ArrayList<>();//⽂件名列表
List folderNameList = new ArrayList<>();//⽂件夹名列表
File f = new File(folderPath);
if (!f.exists()) { //路径不存在
map.put("retType", "1");
}else{
boolean flag = f.isDirectory();
if(flag==false){ //路径为⽂件
map.put("retType", "2");
linux怎么读文件内容map.put("fileName", f.getName());
}else{ //路径为⽂件夹
map.put("retType", "3");
File fa[] = f.listFiles();
queryStr = queryStr==null ? "" : queryStr;//若queryStr传⼊为null,则替换为空(indexOf匹配值不能为null) for (int i = 0; i < fa.length; i++) {
File fs = fa[i];
Name().indexOf(queryStr)!=-1){
if (fs.isDirectory()) {
folderNameList.Name());
} else {
fileNameList.Name());
}
}
}
map.put("fileNameList", fileNameList);
map.put("folderNameList", folderNameList);
}
}
return map;
}
/**
* 以⾏为单位读取⽂件,读取到最后⼀⾏
* @param filePath
* @return
*/
public static List readFileContent(String filePath) { BufferedReader reader = null;
List listContent = new ArrayList<>();
try {
reader = new BufferedReader(new FileReader(filePath)); String tempString = null;
int line = 1;
/
/ ⼀次读⼊⼀⾏,直到读⼊null为⽂件结束
while ((tempString = adLine()) != null) { listContent.add(tempString);
line++;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
}
return listContent;
}
/**
* 读取指定⾏数据 ,注意:0为开始⾏
* @param filePath

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。