文件夹的创建
private String path =Environment.getExternalStorageDirectory().getAbsolutePath()+"/myproject";
File dirFile = new File(path);
If(!dirFile .exist()){
dirFile.mkdir();
}
文件的创建
File file = new File(dirFile,”mywork.txt”);
if (!file.exists()){
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
1-1:保存富文本到本地文件(String data)
FileOutputStream fileOutputStream = null;//文件输出流
BufferedWriter writer = null;
try {
fileOutputStream = new FileOutputStream(file);
writer = new BufferedWriter(new OutputStreamWriter(fileOutputStream));
//向文件中写入数据
writer.write(data);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
if (writer != null)
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
1-2:取出文件,并转化成字符串String的形式
public String load(String filename) {
File file = new File(dirFile,filename);
if (!file.exists()){
return "";
}
FileInputStream in = null;
BufferedReader reader = null;
StringBuilder content = new StringBuilder();
try {
//设置将要打开的存储文件名称
in = new FileInputStream(file);
//FileInputStream -> InputStreamReader ->BufferedReader
reader = new BufferedReader(new InputStreamReader(in));
String line = new String();
//读取每一行数据,并追加到StringBuilder对象中,直到结束
while ((line = reader.readLine()) != null) {
content.append(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return content.toString();
}
2.文件的下载与存储
/** * @param url1 下载文件的地址 * @param FileName 文件名字 */ public static void downLoad(Context context,final String url1, final String FileName) { new Thread(new Runnable() { @Override public void run() { try { URL url = new URL(url1); HttpURLConnection conn; conn = (HttpURLConnection) url.openConnection(); conn.setReadTimeout(600000); conn.setDoInput(true); conn.connect(); if (conn.getResponseCode() == 200) { InputStream is = conn.getInputStream();//获取输入流 FileOutputStream fileOutputStream = null;//文件输出流 if (is != null) { File file = new FileUtil(2).createFile(FileName); fileOutputStream = new FileOutputStream(file); byte[] buf = new byte[1024]; int ch; while ((ch = is.read(buf)) != -1) { fileOutputStream.write(buf, 0, ch);//将获取到的流写入文件中 } //file即为下载成功后的本地文件 //将下载到本地的文件发送到需要用的地方。。 // EventBus.getDefault().post(new EventBusBean<>("EVENTBUS_POST_KEY", file)); } if (fileOutputStream != null) { fileOutputStream.flush(); fileOutputStream.close(); } }else{ Log.e("tag","文件下载--响应码不是200"); } } catch (Exception e) { e.printStackTrace(); } } }).start(); }
3.URL转化成bitmap形式
/** * 将URL转化成bitmap形式 * * @param url * @return bitmap type */ private Bitmap returnBitMap(String url) { URL myFileUrl; Bitmap bitmap = null; try { myFileUrl = new URL(url); HttpURLConnection conn; conn = (HttpURLConnection) myFileUrl.openConnection(); conn.setDoInput(true); conn.connect(); InputStream is = conn.getInputStream(); bitmap = BitmapFactory.decodeStream(is); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } mHandler.obtainMessage(RETURN_SUCCESS).sendToTarget(); return bitmap; }