笛里谁知壮士心,沙头空照征人骨。这篇文章主要讲述android之文件操作——读取assets和raw文件下的内容相关的知识,希望能为你提供帮助。
1.分别创建assets文件夹和res/raw文件夹:(要注意的raw文件是在res下new,然后创建一个名字为raw的文件夹)
【android之文件操作——读取assets和raw文件下的内容】
文章图片
文章图片
2.创建两个txt文件,复制到asset和raw文件夹中:
文章图片
3.实现的效果:
文章图片
文章图片
4.实现代码:
(1)布局文件:
文章图片
文章图片
1 < ?xml version="1.0" encoding="utf-8"?> 2 < LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3xmlns:tools="http://schemas.android.com/tools" 4android:layout_width="match_parent" 5android:layout_height="match_parent" 6android:orientation="vertical" 7tools:context="base.readassetsfile.MainActivity"> 8< Button 9android:textSize="20sp" 10android:text="@string/aasets_txt" 11android:id="@+id/readFile" 12android:layout_width="match_parent" 13android:layout_height="wrap_content" /> 14< Button 15android:textSize="20sp" 16android:text="@string/raw" 17android:id="@+id/readRawFile" 18android:layout_width="match_parent" 19android:layout_height="wrap_content" /> 20 < /LinearLayout>
View Code(2)具体实现:
文章图片
文章图片
1 package base.readassetsfile; 2 3 import android.support.v7.app.AppCompatActivity; 4 import android.os.Bundle; 5 import android.util.Log; 6 import android.view.View; 7 import android.widget.EditText; 8 9 import java.io.BufferedReader; 10 import java.io.IOException; 11 import java.io.InputStream; 12 import java.io.InputStreamReader; 13 import java.io.OutputStream; 14 import java.io.UnsupportedEncodingException; 15 16 public class MainActivity extends AppCompatActivity implements View.OnClickListener { 17@Override 18protected void onCreate(Bundle savedInstanceState) { 19super.onCreate(savedInstanceState); 20setContentView(R.layout.activity_main); 21findViewById(R.id.readFile).setOnClickListener(this); 22findViewById(R.id.readRawFile).setOnClickListener(this); 23} 24@Override 25public void onClick(View v) { 26switch (v.getId()){ 27case R.id.readFile: 28readAsset(); 29break; 30case R.id.readRawFile: 31readRaw(); 32break; 33} 34} 35public void readAsset(){ 36try { 37//获取文件中的字节 38InputStream inputStream=getResources().getAssets().open("Test.txt"); 39//将字节转换为字符 40InputStreamReader isReader=new InputStreamReader(inputStream,"UTF-8"); 41//使用bufferReader去读取内容 42BufferedReader reader=new BufferedReader(isReader); 43String out=""; 44while((out=reader.readLine())!=null){ 45Log.d("读取到的文件信息:",out); 46} 47} catch (IOException e) { 48e.printStackTrace(); 49} 50} 51public void readRaw(){ 52try { 53//获取文件中的内容 54InputStream inputStream=getResources().openRawResource(R.raw.test); 55//将文件中的字节转换为字符 56InputStreamReader isReader=new InputStreamReader(inputStream,"UTF-8"); 57//使用bufferReader去读取字符 58BufferedReader reader=new BufferedReader(isReader); 59String out=""; 60try { 61while((out=reader.readLine())!=null){ 62Log.d("从raw文件夹中读取到的数据:",out); 63} 64} catch (IOException e) { 65e.printStackTrace(); 66} 67} catch (UnsupportedEncodingException e) { 68e.printStackTrace(); 69} 70} 71 72 }
View Code
推荐阅读
- android studio 中 adb logcat 在这里敲
- Android:Toast
- Android Framework框架_转
- H5调用Android拨打电话
- android framework浅析_转
- 关于Android Assets读取文件为File对象
- Android之Service
- Android中的自定义视图控件
- [转]Android Studio 快捷键整理分享