Java 在android中从外部文件读取图像字符串
我正在制作android应用程序。在这个应用程序中,我将我的图像字符串编码到外部卡中的外部文件中。但当我读取该文件以显示图像时…应用程序崩溃了。。 下面是一个代码:Java 在android中从外部文件读取图像字符串,java,android,Java,Android,我正在制作android应用程序。在这个应用程序中,我将我的图像字符串编码到外部卡中的外部文件中。但当我读取该文件以显示图像时…应用程序崩溃了。。 下面是一个代码: storedpic.setOnClickListener(new View.OnClickListener() { ImageView storedimageView = (ImageView) findViewById(R.id.imageView3); public void onClick(View v)
storedpic.setOnClickListener(new View.OnClickListener() {
ImageView storedimageView = (ImageView) findViewById(R.id.imageView3);
public void onClick(View v) {
File sdcard = Environment.getExternalStorageDirectory();
File readfile = new File(sdcard, "myfile.txt");
try {
BufferedReader br = new BufferedReader(new FileReader(readfile));
String test;
while (true) {
test = br.readLine();
// readLine() returns null if no more lines in the file
byte[] bytarray = Base64.decode(test, Base64.DEFAULT);
Bitmap bmimage = BitmapFactory
.decodeByteArray(bytarray, 0, bytarray.length);
storedimageView.setImageBitmap(bmimage);
if (test == null)
break;
}
}
catch (IOException e) {
Toast.makeText(getBaseContext(), "Can't read a file", Toast.LENGTH_LONG).show();
}
}
});
当输入的字符串为null
时,很可能会抛出一个NPE
。试着替换
while (true) {
test = br.readLine();
...
}
与
当然要删除break
语句崩溃详细信息?也许是因为记忆不足?
while ((test = br.readLine()) != null) {
...
}