十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章给大家介绍Android应用中如何实现读取项目中的txt文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
我们提供的服务有:成都网站制作、成都网站设计、微信公众号开发、网站优化、网站认证、巴林左旗ssl等。为超过千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的巴林左旗网站制作公司
具体如下:
1. 众所周知,Android的res文件夹是用来存储资源的,可以在res文件夹下建立一个raw文件夹,放置在raw文件夹下的内容会被原样打包,而不会被编译成二进制文件,并且可以通过R文件进行很方便地访问。
比如我们可以将更新信息、版权信息等放到txt文件中,然后放到raw文件中,然后很方便地进行访问。
在raw中放入一个a.txt文件,然后就可以在Activity中使用getResources().openRawResource(R.raw.a);方法获取一个此文件的InputStream类,而后就可以很方便地进行读写a.txt了。
InputStream inputStream = getResources().openRawResource(R.raw.a);
一个获取InputStream中字符串内容的方法:
public static String getString(InputStream inputStream) { InputStreamReader inputStreamReader = null; try { inputStreamReader = new InputStreamReader(inputStream, "gbk"); } catch (UnsupportedEncodingException e1) { e1.printStackTrace(); } BufferedReader reader = new BufferedReader(inputStreamReader); StringBuffer sb = new StringBuffer(""); String line; try { while ((line = reader.readLine()) != null) { sb.append(line); sb.append("\n"); } } catch (IOException e) { e.printStackTrace(); } return sb.toString(); }
传入一个InputStream,返回其中的文本内容。
其中:
inputStreamReader = new InputStreamReader(inputStream, "gbk");
为以gbk编码读取内容,不同的文本文件可能编码不同,如果出现乱码,可能需要调整编码
2. 下面通过一个例子讲解读取资源文件显示在ScrollView当中:
①.ReadAsset.java文件:
package com.example.ReadAsset; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; import java.io.IOException; import java.io.InputStream; public class ReadAsset extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.read_asset); try { //Return an AssetManager instance for your application's package InputStream is = getAssets().open("index.txt"); int size = is.available(); // Read the entire asset into a local byte buffer. byte[] buffer = new byte[size]; is.read(buffer); is.close(); // Convert the buffer into a string. String text = new String(buffer, "GB2312"); // Finally stick the string into the text view. TextView tv = (TextView) findViewById(R.id.text); tv.setText(text); } catch (IOException e) { // Should never happen! throw new RuntimeException(e); } } }
②. read_asset.xml文件
<?xml version="1.0" encoding="utf-8"?>
③.然后在工程里面新建一个assets文件夹,随便放一个index.txt的文件在其中,运行 Ctrl+F11进行测试即可;
关于Android应用中如何实现读取项目中的txt文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。