存储文件:
public class FileOperate extends Activity { private static final String FILENAME = "mydata.txt" ;// 设置文件名称 private static final String DIR = "ljpdata" ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.main); // 调用布局文件 if(Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)){ // 如果sdcard存在 File file = new File(Environment .getExternalStorageDirectory().toString() + File.separator + DIR + File.separator + FILENAME) ; // 定义File类对象 if (! file.getParentFile().exists()) { // 父文件夹不存在 file.getParentFile().mkdirs() ; // 创建文件夹 } PrintStream out = null ; // 打印流对象用于输出 try { out = new PrintStream(new FileOutputStream(file, true)); // 追加文件 out.println("山东大学软件学院(SDU,www.sdu.edu.cn),讲师:学生"); } catch (Exception e) { e.printStackTrace(); } finally { if (out != null) { out.close() ; // 关闭打印流 } } } else { // SDCard不存在,使用Toast提示用户 Toast.makeText(this, "保存失败,SD卡不存在!",Toast.LENGTH_LONG).show(); } } }
读取文件:
public class FileOperate extends Activity { private static final String FILENAME = "mydata.txt" ; // 设置文件名称 private static final String DIR = "ljpdata" ; // 设置保存文件夹 private TextView msg = null ; // 文本显示 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.main); // 调用布局文件 this.msg = (TextView) super.findViewById(R.id.msg) ; if(Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)){ // 如果sdcard存在 File file = new File(Environment .getExternalStorageDirectory().toString() + File.separator + DIR + File.separator + FILENAME) ; // 定义File类对象 if (! file.getParentFile().exists()) { // 父文件夹不存在 file.getParentFile().mkdirs() ; // 创建文件夹 } Scanner scan = null ; // 扫描输入 try { scan = new Scanner(new FileInputStream(file)) ; // 实例化Scanner while(scan.hasNext()){ // 循环读取 this.msg.append(scan.next() + " ") ; // 设置文本 } } catch (Exception e) { e.printStackTrace(); } finally { if (scan != null) { scan.close() ; // 关闭打印流 } } } else { // SDCard不存在,使用Toast提示用户 Toast.makeText(this, "读取失败,SD卡不存在!",Toast.LENGTH_LONG).show(); } } }
Android将图像转换成流存储与将流转换成图像
//take the image to byte[] byte[] byteIcon = userIcon; //将字节数组即头像从二进制流转换成drawable if(byteIcon != null){ ByteArrayInputStream bais = new ByteArrayInputStream(byteIcon); userIconDrawable = Drawable.createFromStream(bais, "image"); }
BitMap userIcon; //将bitmap转换成drawable ByteArrayOutputStream os = new ByteArrayOutputStream(); //参数1转换类型,参数2压缩质量,参数3字节流资源 userIcon.compress(CompressFormat.PNG, 100, os); //将Drawable 转成bitmap BitmapDrawable tempDrawable = (BitmapDrawable) DrawableImage; tempDrawable.getBitmap();