Java 如何从内部存储器在多个微调器上显示文本文件项
当我点击“写入”按钮时,比在内部存储器中创建文本文件要好,但当我读取它们时,比如何在微调器上显示文本文件项要好。在文本文件中,当我单击“读取”按钮时,包含名称、年龄、标准项,该项显示在特定微调器上。 文本文件中的项为名称、年龄、标准 三个喷丝头姓名、年龄、性病 当我点击read按钮时,所有文本文件itemname、age、std显示在每个微调器的另一个活动上。 问题是如何显示每个微调器的文本文件项Java 如何从内部存储器在多个微调器上显示文本文件项,java,android,storage,android-spinner,Java,Android,Storage,Android Spinner,当我点击“写入”按钮时,比在内部存储器中创建文本文件要好,但当我读取它们时,比如何在微调器上显示文本文件项要好。在文本文件中,当我单击“读取”按钮时,包含名称、年龄、标准项,该项显示在特定微调器上。 文本文件中的项为名称、年龄、标准 三个喷丝头姓名、年龄、性病 当我点击read按钮时,所有文本文件itemname、age、std显示在每个微调器的另一个活动上。 问题是如何显示每个微调器的文本文件项 Mainactivity.java btnWriteSDFile = (Butto
Mainactivity.java
btnWriteSDFile = (Button) findViewById(R.id.b2);
btnWriteSDFile.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Jour=display.getText().toString();
FILENAME = display.getText().toString();
if (FILENAME.contentEquals("")){
FILENAME = "UNTITLED";
}
// write on SD card file data in the text box
try {
FileOutputStream fOut = openFileOutput(FILENAME,MODE_APPEND);
fOut.write(display.getText().toString().getBytes());
fOut.close();
Toast.makeText(getBaseContext(),"file saved",
Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
btnReadSDFile = (Button) findViewById(R.id.b3);
btnReadSDFile.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// write on SD card file data in the text box
int id = v.getId();
for (int i = 0; i < activities.length; i++) {
if (id == getResources().getIdentifier("b" + i, "id",
"com.example.pp")) {
Intent intent = new Intent("com.example.pp."
+ activities[i]);
startActivity(intent);
}
}
} });
list.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
sp1=(Spinner) findViewById(R.id.spinner1);
sp2=(Spinner) findViewById(R.id.spinner2);
sp3=(Spinner) findViewById(R.id.spinner3);
entry = (TextView)findViewById(R.id.TextView123);
getFilesnames();
}
private void getFilesnames() {
// TODO Auto-generated method stub
String[] filenames=getApplicationContext().fileList();
List<String> list=new ArrayList<String>();
for(int i=0;i<filenames.length;i++){
list.add(filenames[i]);
}
/*if(list.size() <= 0) {
int i = 0;
list.add("You string.....");
}*/
ArrayAdapter<String> filenameAdapter=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,list);
sp1.setAdapter(filenameAdapter);
}
public void onClick(View v) {
// TODO Auto-generated method stub
String selectFile = String.valueOf(sp1.getSelectedItem());
openFile(selectFile);
}
private void openFile(String selectFile) {
// TODO Auto-generated method stub
String value = "";
FileInputStream fis;
try {
fis = openFileInput(selectFile);
byte[] input = new byte[fis.available()];
while(fis.read(input) != -1){
value += new String(input);
}
fis.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
entry.setText(value);
}
您现在遇到了什么错误?没有错误,但所有文本文件项都显示一个微调器。如何将所有文本文件项分别显示所有微调器我认为首先您需要获取所有项目,以行分隔,然后在一个数组中收集它们,然后膨胀微调器。所有项目在一个文本文件中以逗号分隔,并且该项目显示在所有三个微调器上。我不知道如何在微调器上显示。有任何想法、教程或代码是的,但请告诉我,您是否正确读取了文本文件中的数据?