我正在将活动迁移到片段,我遇到了将数据写入.txt文件的问题,单击“保存数据”按钮时没有任何反应。当我说“什么都没有”时,我的意思是吐司通知不会发生,文件也不会写。
这是我到目前为止所拥有的:
“保存数据”按钮的监听器:
public void onClick(View v) {
switch (v.getId()) {
case R.id.myDatePickerButton:
**unused for this**
break;
case R.id.saveGenInfoButton:
writeToFile();
break;
}
}
writeToFile方法
private void writeToFile() {
String outputString = ("Output\n" + "\n" + fiView1.getText().toString() + outputFOI1.getText().toString()
+ "\n" + fiView2.getText().toString() + outputFOI2.getText().toString() + "\n" + districtView.getText().toString() + outputEngineeringDistrict.getText().toString() + "\n"
+ countyView.getText().toString() + outputCountyName.getText().toString() + "\n" + municipalityView.getText().toString() + outputMunicipalityName.getText().toString());
String filename = (outputFileName.getText().toString() + ".txt");
try {
File outputFile = new File(Environment.getExternalStorageDirectory(), filename);
outputFile.createNewFile();
OutputStreamWriter writer = new OutputStreamWriter(getActivity().openFileOutput(filename, Context.MODE_PRIVATE));
writer.write(outputString);
writer.close();
Toast
.makeText(getActivity(), "Information saved to SD card as " + filename, Toast.LENGTH_LONG)
.show();
} catch (Throwable t)
{
Toast
.makeText(getActivity(), "Exception: " + t.toString(), Toast.LENGTH_LONG)
.show();
}
另外,我的变量在onStart中设置如下:
outputDOI = (TextView) getView().findViewById(R.id.outputDOI);
doiView = (TextView) getView().findViewById(R.id.doiView);
fiView1 = (TextView) getView().findViewById(R.id.fiView1);
outputFOI1 = (EditText) getView().findViewById(R.id.outputFOI1);
fiView2 = (TextView) getView().findViewById(R.id.fiView2);
outputFOI2 = (EditText) getView().findViewById(R.id.outputFOI2);
districtView = (TextView) getView().findViewById(R.id.districtView);
outputEngineeringDistrict = (EditText) getView().findViewById(R.id.outputEngineeringDistrict);
countyView = (TextView) getView().findViewById(R.id.countyView);
outputCountyName = (EditText) getView().findViewById(R.id.outputCountyName);
municipalityView = (TextView) getView().findViewById(R.id.municipalityView);
outputMunicipalityName = (EditText) getView().findViewById(R.id.outputMunicipalityName);
outputFileName = (EditText) getView().findViewById(R.id.outputFilename);
save_gen_info_button = (Button) getView().findViewById(R.id.saveGenInfoButton);