从文件导入列表列表后,列表视图不打印出来

时间:2019-06-19 04:22:20

标签: java android file android-arrayadapter

listview没有显示字符串数组文件,我似乎无法查看用户输入的字符串

public class ReadActivity extends ListActivity {
String[] mStringArray;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);


 ListView listview = getListView();

    FileWritter fl = new FileWritter();
    List<String> mStringList = fl.loadlist2("DiaryNames.txt",this);
    mStringArray = new String[mStringList.size()];
    mStringArray = mStringList.toArray(mStringArray);


   ArrayAdapter<String> adapter = new ArrayAdapter<String> 
   (this,android.R.layout.simple_list_item_1,mStringArray); 

   listview.setAdapter(adapter);
   setListAdapter(adapter);

到目前为止,这是我认为loadlist2有问题的代码,因此该列表用于从diarynames.txt导入文件,而该文件是从另一个函数输入的

    public List<String>  loadlist2(String title, Context context)
{
    List<String> list = new ArrayList<>();
    try {
        BufferedReader in = new BufferedReader(
                new FileReader(title));

        String mystring;
        while ((mystring = in.readLine()) != null) {
            list.add(mystring);
        }
    }
    catch (IOException e) {
        System.out.println("Exception Occurred" + e);
    }
    return list;
}
}

2 个答案:

答案 0 :(得分:0)

您确定自己没有得到 System.out.println("Exception Occurred" + e);吗?

答案 1 :(得分:0)

@BabyYakuza-在开始回答之前,我想问你; 您能否发布DiaryNames.txt文件的内容?如果没有,您能告诉我们此文件中文本的格式吗?另外,该文件在哪里(我的意思是在您的目录结构中)?这是因为,您正在执行的其他所有操作似乎都还可以。

我在IDE中浏览了您的代码。我在DiaryNames.txt中使用了以下内容

# code.py
import package.targetPackage as targetPackage
...

当我浏览您的代码时,

Ashish Raghavan
Sushant Shivaprasad
Piyush Murari
Mohan Nair
Tushar Nair

我得到了正确的5个字符串输出,如文件DiaryNames.txt中提到的名称数一样。

此外,因为您没有在任何地方使用它,所以在loadlist2中不需要context参数。无论如何,这是我的binbin代码Main methodFileWritter.java。 如果使用此代码,请修改DiaryNames.txt文件的路径。另外,我没有在loadlist2()方法中传递任何内容,因为它始终是文件名DiaryNames.txt和Context变量,该方法中未使用它。

很有可能DiaryNames.txt中的文本格式不是您所期望的。如果您可以发布文件DiaryNames.txt的一些示例内容,那将确实对我们有帮助。