Java 如何从ArrayList中删除<;字符串>;文本文档以外的所有元素?
在我的代码中,假设只应添加到以“.txt”结尾的项目列表中,但该列表显示X文件夹中的所有内容 这是我的代码:Java 如何从ArrayList中删除<;字符串>;文本文档以外的所有元素?,java,android,arraylist,Java,Android,Arraylist,在我的代码中,假设只应添加到以“.txt”结尾的项目列表中,但该列表显示X文件夹中的所有内容 这是我的代码: private void spinner_dos() { //ARRAY CON TITULOS DE ARCHIVOS TXT if (carpeta_para_leer == "Textos") { camino = Environment.getExternalStorageDirectory().toString()+"/" + carpe
private void spinner_dos() {
//ARRAY CON TITULOS DE ARCHIVOS TXT
if (carpeta_para_leer == "Textos")
{
camino = Environment.getExternalStorageDirectory().toString()+"/" + carpeta_para_leer+ "/";
}else{
camino = Environment.getExternalStorageDirectory().toString()+"/Textos/" + carpeta_para_leer+ "/";
}
try {
File t = new File(camino);
String[] lista_textos = t.list();
lista_lista_textos = new ArrayList<String>();
for (String lista_texto : lista_textos) {
if (lista_texto.toLowerCase().endsWith(".txt")) {
lista_lista_textos.add(lista_texto);
}
}
for (int index =0; index < lista_lista_textos.size(); index++){
lista_lista_textos.set(index, WordUtils.capitalizeFully(lista_textos[index].toLowerCase().replace(".txt", "")));
}
Collections.sort(lista_lista_textos, new AlphanumComparator());
}catch (Exception e){
}
if (lista_lista_textos.size() ==0 && ar.size() !=0){
tv1.post(new Runnable() {
@Override
public void run() {
tv1.setText("La carpeta seleccionada no contiene archivos de texto...");
tv1.setVisibility(View.VISIBLE);
String[] array_blanco = new String[0];
ArrayAdapter<String> adaptador = new ArrayAdapter<String>(EL_Entrenamiento.this, android.R.layout.simple_spinner_item, array_blanco);
adaptador.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
spinner_fichero.setAdapter(adaptador);
}
});
}else{
tv1.post(new Runnable() {
@Override
public void run() {
tv1.setText("");
tv1.setVisibility(View.VISIBLE);
}
});
ArrayAdapter<String> adaptador_textos = new ArrayAdapter<String>(EL_Entrenamiento.this, android.R.layout.simple_spinner_item, lista_lista_textos);
adaptador_textos.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
spinner_fichero.setAdapter(adaptador_textos);
spinner_fichero.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
private void微调器_dos(){
//ARRAY Contitulos DE ARCHIVOS TXT
如果(地毯长度=“文本”)
{
camino=Environment.getExternalStorageDirectory().toString()+“/”+ruepara_para_leer+“/”;
}否则{
camino=Environment.getExternalStorageDirectory().toString()+“/Textos/”+ruepara_para_leer+“/”;
}
试一试{
文件t=新文件(camino);
字符串[]lista_textos=t.list();
lista_lista_textos=新建ArrayList();
for(字符串lista_texto:lista_textos){
if(lista_texto.toLowerCase().endsWith(“.txt”)){
添加(lista_texto);
}
}
对于(int index=0;index
如果项目以“.txt”结尾,我如何才能将其添加到列表中,或者以其他方式将其删除?此循环:
for (int index =0; index < lista_lista_textos.size(); index++){
lista_lista_textos.set(index, WordUtils.capitalizeFully(lista_textos[index].toLowerCase().replace(".txt", "")));
}
for(int index=0;index
基本上用大写的lista\u-textos
覆盖您的lista\u-textos
。列表和数组中的索引将不匹配,因为您没有添加所有索引。您应该从lista\u-textos.get(index)
读取索引。此循环:
for (int index =0; index < lista_lista_textos.size(); index++){
lista_lista_textos.set(index, WordUtils.capitalizeFully(lista_textos[index].toLowerCase().replace(".txt", "")));
}
for(int index=0;index
基本上用大写的
lista\u textos
覆盖您的lista\u textos
。列表和数组中的索引将不匹配,因为您没有添加所有索引。您应该从lista\u textos.get(index)读取
相反。代码在我看来是正确的。你确定你显示的是lista_lista_textos而不是lista_textos或其他什么吗?似乎你的代码已经在做你描述的事情。对我来说,这段代码没有错。我在旋转器中使用此列表,我保留完整的代码。代码在我看来是正确的。你确定你显示的是lista吗_lista_textos而不是lista_textos或其他什么?似乎你的代码已经在做你所描述的。对我来说,这段代码没有错。我在微调器中使用这个列表,我留下了完整的代码