精确测量代码运行时间:
long startTime =System.nanoTime(); //当前时间
long consumingTime =System.nanoTime() – startTime; //花费时间
System.out.println(consumingTime);
Bitmap与文件图片互转:
需要先打开Manifest中相应权限。否则各种跳进catch中。
//图片读取成Bitmap
String filePath = Environment.getExternalStorageDirectory().getAbsolutePath()+ "a.jpg";
Bitmap bitmap = BitmapFactory.decodeFile(filePath);
// 如果图片过大,可能导致Bitmap对象装不下图片
Bitmap bitmap1 = BitmapFactory.decodeFile(filePath, bitmapOption(2));// 将图片的长和宽缩小1/2
private Options bitmapOption(int inSampleSize) {
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPurgeable = true;
options.inSampleSize = inSampleSize;
return options;
}
// Bitmap对象保存味图片文件
public void saveBitmapFile(Bitmap bitmap) {
File file = new File(filePath);// 将要保存图片的路径
try {
BufferedOutputStream bos = new BufferedOutputStream(
new FileOutputStream(file));
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos);
bos.flush();
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
字符串与文件互转:
FileOutputStream out = new FileOutputStream(filename);
out.write(str.getBytes()); //toCharArray();
out.close();
FileInputStreamin=new FileInputStream(new File(filename));//新建一个FileInputStream对象
byte[]result=new byte[in.available()];//新建一个字节数组
in.read(result);//将文件中的内容读取到字节数组中
in.close();
Stringstr=new String(result);//再将字节数组中的内容转化成字符串形式输出
System.out.println(str);