android listview刷新期间出现空指针异常

android listview刷新期间出现空指针异常,android,listview,refresh,nullpointerexception,Android,Listview,Refresh,Nullpointerexception,我想在下载完后更新我的列表视图,但它给了我空指针异常,我的代码与下面的一样 try { URL url = new URL(GlobalVariable.Getstr()); HttpURLConnection c = (HttpURLConnection) url.openConnection(); c.setRequestMethod("GET");

我想在下载完后更新我的列表视图,但它给了我空指针异常,我的代码与下面的一样

try { URL url = new URL(GlobalVariable.Getstr()); HttpURLConnection c = (HttpURLConnection) url.openConnection(); c.setRequestMethod("GET"); c.setDoOutput(true); c.connect(); int lenghtOfFile = c.getContentLength(); Log.d("ANDRO_ASYNC", "Lenght of file: " + lenghtOfFile); String PATH = Environment.getExternalStorageDirectory() + "/download/"; Log.v(LOG_TAG, "PATH: " + PATH); File file = new File(PATH); file.mkdirs(); // String fileName = "workTest.mp3"; String fileName = GlobalVariable.Getstrpath().toString(); File outputFile = new File(file, fileName); FileOutputStream fos = new FileOutputStream(outputFile); InputStream is = c.getInputStream(); byte[] buffer = new byte[1024]; // int len1 = 0; long total = 0; // while ((len1 = is.read(buffer)) != -1) { // total += len1; // publishProgress(""+(int)((total*100)/lenghtOfFile)); // fos.write(buffer, 0, len1); // while ((count = is.read(buffer)) != -1) { total += count; publishProgress(""+(int)((total*100)/lenghtOfFile)); fos.write(buffer, 0, len1); } fos.close(); is.close(); // ArrayAdapter aa=new ArrayAdapter(FindFilesByType.this, android.R.layout.test_list_item,Ringtones); // aa.setNotifyOnChange(true); // lv1.setAdapter(aa); try{ ((ArrayAdapter) lv1.getAdapter()).notifyDataSetChanged(); // adapter.notifyDataSetChanged(); } catch (Exception e) { Log.i(LOG_TAG, "Error: " + e.toString()); } 试一试{ URL=新URL(GlobalVariable.Getstr()); HttpURLConnection c=(HttpURLConnection)url.openConnection(); c、 setRequestMethod(“GET”); c、 设置输出(真); c、 connect(); int lenghtOfFile=c.getContentLength(); Log.d(“ANDRO_ASYNC”,“文件长度:“+lenghtOfFile”); String PATH=Environment.getExternalStorageDirectory() +“/下载/”; Log.v(Log_标签,路径:+PATH); 文件=新文件(路径); mkdirs()文件; //字符串fileName=“workTest.mp3”; 字符串文件名=GlobalVariable.Getstrpath().toString(); File outputFile=新文件(文件,文件名); FileOutputStream fos=新的FileOutputStream(outputFile); InputStream=c.getInputStream(); 字节[]缓冲区=新字节[1024]; //int len1=0; 长总计=0; //而((len1=is.read(buffer))!=-1){ //总+=len1; //出版进度(“+(int)((总计*100)/长度文档)); //fos.写入(缓冲区,0,len1); // 而((count=is.read(buffer))!=-1){ 总数+=计数; 出版进度(“+(int)((总计*100)/长度文档)); fos.写入(缓冲区,0,len1); } fos.close(); is.close(); //ArrayAdapter aa=新的ArrayAdapter(findFileByType.this,android.R.layout.test\u list\u项,铃声); //aa.setNotifyOnChange(true); //lv1.设置适配器(aa); 试一试{ ((ArrayAdapter)lv1.getAdapter()).notifyDataSetChanged(); //adapter.notifyDataSetChanged(); } 捕获(例外e){ Log.i(Log_标记,“Error:+e.toString()); } 我得到了

04-28 15:56:17.198:INFO/app(624):错误:java.lang.NullPointerException

我做错了什么


提前感谢

哪一行出现异常

并在适配器上使用notifyDataSetChanged();方法,而不是lvl.getAdapter().notifyDataSetChanged()

编辑:查看此


希望有帮助。

这是我在创建方法ArrayAdapter=new ArrayAdapter(findFileByType.this,android.R.layout.test_list_item,Ringtones)上的数组适配器;this.lv1.setAdapter(adapter);lvl.setAdapter(aa)它显示列表..?并且数据添加不是空的,右边显示的是同一个错误??这意味着添加到listview的数据中是空的。