我是android开发的新手。今天,我试图在我的应用程序中显示我所有的Java练习程序。我希望应用程序读取以.txt文件写入的数据。如何阅读Android中的.txt文件?
- 在哪个文件夹中应该存储我的所有程序?他们超过100个。
- 我想要显示程序2的内容,当我点击列表视图中的2或任何其他
- 我们可以将文本文件存储在数据库中吗?如果是这样,我如何访问它们?我如何阅读它们?
- 任何基本的想法我该如何解决这个问题?
我是android开发的新手。今天,我试图在我的应用程序中显示我所有的Java练习程序。我希望应用程序读取以.txt文件写入的数据。如何阅读Android中的.txt文件?
您可以将文本文件保存在raw/assets文件夹中。 要阅读他们只是使用此代码。 从资产:
BufferedReader reader = new BufferedReader(
new InputStreamReader(getAssets().open("YourTextFile.txt")));
从原料:
InputStream inputStream = context.getResources().openRawResource(R.id.yourresoureid);
InputStreamReader inputreader = new InputStreamReader(inputStream)
因为你是一个Java程序员没有必要告诉如何从InputStream中读取数据,如果你的话,还真想告诉我,我会后休息的代码。
将大量的数据保存在数据库中并不是一个好主意。
实例从InputStream中
读取数据BufferedInputStream bis=new BufferedInputStream(inputstream);
ByteArrayBuffer baf=new ByteArrayBuffer(1000);
while((k=bis.read())!=-1)
{
baf.append((byte)k);
}
String results=new String(baf.toByteArray());
是的,答案会很长,我认为SQLite的教程将是一个开始的地方。 2,1。尝试将您的文本文件放在资产文件夹中并像这样读取它们。该代码读取一个文件,并逐行将其转储到日志中。
@Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_read);
AssetManager assetManager = getAssets();
try {
BufferedReader br = new BufferedReader(new InputStreamReader(
assetManager.open("hi.txt")));
// InputStream inputStream = assetManager.open("hi.txt");
// BufferedReader br = new BufferedReader(
// new InputStreamReader(inputStream));
String lineIn;
while ((lineIn = br.readLine()) != null) {
Log.d("ReadTheDamnFile", lineIn);
}
assetManager.close();
} catch (IOException e) {
}
}
试试这个它精细的做工:)
try
{
if(poslist==0)
{
in = this.getAssets().open("file1.txt");
iv.setBackgroundResource(R.drawable.fileimage1);
}
}
catch (IOException e)
{
e.printStackTrace();
}
try {
reader = new BufferedReader(new InputStreamReader(in,"UTF-8"));
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String line="";
String s ="";
try
{
line = reader.readLine();
}
catch (IOException e)
{
e.printStackTrace();
}
while (line != null)
{
s = s + line;
s =s+"\n";
try
{
line = reader.readLine();
}
catch (IOException e)
{
e.printStackTrace();
}
}
tv.setText(""+s);
}
public void onClick(View v){
try {
line = reader.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (line != null){
tv.setText(line);
} else {
//you may want to close the file now since there's nothing more to be done here.
}
http://stackoverflow.com/questions/5771366/reading-a-simple-text-file –