Assets
2016-05-28 10:26
169 查看
package com.hanqi.testapp3; import android.content.SharedPreferences; import android.content.res.AssetManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.Environment; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.EditText; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.PrintStream; public class MainActivity extends AppCompatActivity { ImageView iv_1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv_1 = (ImageView)findViewById(R.id.iv_1); } //保存资产文件到内部存储 public void bt4_OnClick(View v) { //操作assets目录的文件 //1、得到assetsManager AssetManager am = getAssets(); try { //2、操作资产目录,边读边写入 //1)读文件到内存 inputstream InputStream is = am.open("qiyi.png"); //2)写文件到目录 outputsteam FileOutputStream fos = openFileOutput("text.png",MODE_PRIVATE); //先读后写 byte[] b = new byte[1024]; int i = 0; while ((i=is.read(b)) > 0) { fos.write(b,0,i); } fos.close(); is.close(); Toast.makeText(MainActivity.this, "保存文件成功", Toast.LENGTH_SHORT).show(); } catch (Exception ex) { Toast.makeText(MainActivity.this, "保存文件出错", Toast.LENGTH_SHORT).show(); } } //设置图片指向内部存储 public void bt5_OnClick(View v) { //1、得到文件路径 String path = getFilesDir().getAbsolutePath() + "/text.png"; Toast.makeText(MainActivity.this, "path = " + path, Toast.LENGTH_SHORT).show(); //2、从内部存储的图片得到 Bitmap,BitmapFactory.decodeFile("文件路径"); Bitmap bm = BitmapFactory.decodeFile(path); //3、设置图片视图的图片来源 iv_1.setImageBitmap(bm); } }
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.hanqi.testapp3.MainActivity" android:orientation="vertical"> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="保存资产文件到内部存储" android:onClick="bt4_OnClick"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/iv_1" android:src="@drawable/apu"/> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="设置图片指向内部存储" android:onClick="bt5_OnClick"/> </LinearLayout>
相关文章推荐
- Window 添加定时任务
- 完美立方
- 关于actor模型的优缺点分析
- MySQL中的DML:数据操作语言,增删改
- 一站式学习Wireshark(九):应用Wireshark显示过滤器分析特定数据流(上)
- 文件与IO(四)之其他流
- 手机内部存储外部存储
- 巨大生物塑料市场
- 【C++】static关键字用法总结
- 制作openstack使用的Ubuntu镜像
- arXiv网站
- javascript 用函数实现继承详解
- eclipse maven plugin 插件 安装 和 配置
- 删除文件
- 面向对象六大原则之单一职责原则在Android实际开发场景中的运用(一)
- 内部存储到外部存储
- 站立会议05(冲刺二)
- MySQL中的数据库和数据表的操作
- 第十四周实践项目之阅读并运行程序————(2)
- iOS开发过程中使用Core Data应避免的十个错误