/**
* 根据文件路径读取文件内容
* @param filePath
* @return
*/
public static String readFileContent(String filePath) {
StringBuilder result = new StringBuilder();
try {
BufferedReader bfr = new BufferedReader(new InputStreamReader(new FileInputStream(new File(filePath)), Constants.UTF8));
String lineTxt = null;
while ((lineTxt = bfr.readLine()) != null) {
result.append(lineTxt);
}
bfr.close();
} catch (Exception e) {
e.printStackTrace();
return null;
}
return result.toString();
}
/**
* 根据http路径读取文件内容
* @param urlStr
* @return
*/
public static String readFileByUrl(String urlStr) {
String res = null;
try {
URL url = new URL(urlStr);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//设置超时间为3秒
conn.setConnectTimeout(3 * 1000);
//防止屏蔽程序抓取而返回403错误
conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
//得到输入流
InputStream inputStream = conn.getInputStream();
res = readInputStream(inputStream);
} catch (Exception e) {
e.printStackTrace();
}
return res;
}
/**
* 从输入流中获取字符串
* @param inputStream
* @return
* @throws IOException
*/
public static String readInputStream(InputStream inputStream) throws IOException {
byte[] buffer = new byte[1024];
int len = 0;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
while ((len = inputStream.read(buffer)) != -1) {
bos.write(buffer, 0, len);
}
bos.close();
return new String(bos.toByteArray(), "utf-8");
}