如何在按钮单击时以文本格式保存列表视图的所有数据
Posted
技术标签:
【中文标题】如何在按钮单击时以文本格式保存列表视图的所有数据【英文标题】:how to save all data of listview in text format on button click 【发布时间】:2017-08-25 06:42:30 【问题描述】:<TextView
android:id="@+id/tv"
android:layout_
android:layout_
android:padding="20dp"
android:textColor="#000000"
android:textSize="20sp"/>
我是android编程新手,请大家帮帮我。如何在我们的手机点击按钮时以文本格式保存Listview的所有数据
static String[] city = "Indore","Bhopal","Mumbai","Pune","Delhi","Kolkata",
"Hyderabad","Banglore","Chennai","Amritsar","jhalandhar";
Button button;
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
listView = (ListView) findViewById(R.id.lv);
MyAdapter myadapter = new MyAdapter(getApplicationContext(),city);
listView.setAdapter(myadapter);
【问题讨论】:
您的列表视图看起来如何? 简单的城市名称列表@android_griezmann 我已经编辑了问题@android_griezmann 【参考方案1】:在您的按钮点击时编写此代码
try
File myFile = new File("/sdcard/mysdfile.txt");
myFile.createNewFile();
FileOutputStream fOut = new FileOutputStream(myFile);
OutputStreamWriter myOutWriter =
new OutputStreamWriter(fOut);
for (int i = 0; i < city.length; i++)
myOutWriter.append(city[i] +"\n");
myOutWriter.close();
fOut.close();
Toast.makeText(getBaseContext(),
"Done writing SD 'mysdfile.txt'",
Toast.LENGTH_SHORT).show();
catch (Exception e)
Toast.makeText(getBaseContext(), e.getMessage(),
Toast.LENGTH_SHORT).show();
注意:不要忘记在AndroidMenifest.xml
中提供以下权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
【讨论】:
谢谢先生让我看看它是否有效 谢谢你,先生,它的工作非常感谢,先生,把它保存为 PDF 格式 欢迎使用this thread创建PDF,有点棘手! 我无法理解如何转换为 PDF 格式 @android_griezmann【参考方案2】:希望这会有所帮助。
SharedPreferences.Editor edit = PreferenceManager.getDefaultSharedPreferences(this).edit();
for (int i = 0 ; i < items.size(); i++)
ListViewItem item = items.get(i);
edit.putString(Integer.toString(i), item.elementOne + "," + item.elementTwo + "," + item.elementthree);
edit.commit();
【讨论】:
以上是关于如何在按钮单击时以文本格式保存列表视图的所有数据的主要内容,如果未能解决你的问题,请参考以下文章