-1

私はwinformでファイルを読み込んでリストに保存しています。「削除」ボタンがあり、それをクリックするとリストからアイテム(各リストアイテムはファイルの行です)が削除され、これを書き戻すと削除したアイテムをファイルにリストすると、空白行に置き換えられます。

ファイルにこれらの空白行を入れたくありません。どなたか削除方法を教えてください。

list.Remove(item)リストからアイテムを削除するために使用してみました。ここに私が試したものがあります...

ListView.CheckedListViewItemCollection chkditems = listView1.CheckedItems;
            Regex regex1 = new Regex(".*\"(?<vm_name>.*)\".*:.*{.*\"vmx_path\".*:.*r?\"(?<vmx_path>.*)\",.*\"vm_base\".*:.*r?\"(?<vm_base>.*)\".*");
            List<string> list_to_items = new List<string>();
            foreach (ListViewItem chkitem in chkditems)
            {
                foreach (string line in list)
                {
                    Match match1 = regex1.Match(line);
                    if (match1.Success)
                    {
                        if (match1.Groups["vm_name"].Value == chkitem.Text)
                        {
                            list_to_items.Add(line);
                        }
                    }
                }
                listView1.Items.Remove(chkitem);
            }
            foreach (string tormv in index)
            {
                list.Remove(tormv);
            }

リストのサンプル データについては、任意のテキストが含まれていると見なすことができます。

4

1 に答える 1

1

コメントのはずなのに、コードだと難しい…

何をしているのかわかりませんが、このコードを実行すると、質問の前提が間違っていることがわかります。

var list = new List<string>{"1","2","3"};
Console.WriteLine(string.Join(", ", list)); // 1, 2, 3
list.Remove("2");
Console.WriteLine(string.Join(", ", list)); // 1, 3
于 2013-09-26T09:36:01.673 に答える