![](/img/trans.png)
[英]How to copy one TXT File from Assets folder to SD / Internal Storage Android C# Xamarin
[英]Remove line / string from TXT file Android c# Xamarin
我目前正在使用StreamReader
从Assets中打开一个.txt
文件,其中包含进入ListView
的字符串行
我该如何做,以便当我点击列表视图项时,它会从文本文件中删除该行?
public class MainActivity : Activity
{
ListView notesList;
String[] notesArray;
Stream stream;
StreamReader streamReader;
String line;
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.Main);
ActionBar.Hide();
//Notes
notesList = FindViewById<ListView>(Resource.Id.lvNotes);
//File name
stream = Assets.Open("NotesData.txt");
// Declare new List.
List<string> lines = new List<string>();
// Use using StreamReader for disposing.
using (streamReader = new StreamReader(stream))
{
while ((line = streamReader.ReadLine()) != null)
{
lines.Add(line);
}
}
notesArray = lines.ToArray();
//Load ListView Data
ArrayAdapter adapter = new ArrayAdapter(
this, Android.Resource.Layout.SimpleExpandableListItem1, notesArray);
notesList.Adapter = adapter;
notesList.ItemClick += lvNotes_ItemSelected;
}
private void lvNotes_ItemSelected(object sender, AdapterView.ItemClickEventArgs e)
{
//Where I want the Line to be deleted!
string toast = "Clicked: " + notesList.GetItemAtPosition(e.Position);
Toast.MakeText(this, toast, ToastLength.Long).Show();
}
}
Assets.Open("NotesData.txt");
我假设您从应用程序资产中打开文件。 应用程序资产无法修改。 您可以修改的是文件系统中的文件。 如果要对文件系统中的文件执行相同的操作,只需在单击该项时从List<string> lines
删除带有单击位置的List<string> lines
,然后将这些行覆盖到文件中即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.