簡體   English   中英

C#編輯文本文件

[英]C# Editing a text file

我有一個要編輯的文本文件。 基本上,文本文件保存企業中的請求數據。 因此,它將按該順序存儲名稱,員工ID,請求類型,請求總數,請求狀態以及日期和時間。 我必須能夠編輯所選行的總金額。 我正在使用列表視圖來選擇項目。 因此,例如,我必須接受Smith的請求,並編輯$ 2.00,然后將其更改為$ 4.00。

Ryan Rock,345,食品,$ 456.00,待定,4/2/2015 3:48:45 PM

史密斯,4567,食品,$ 2.00,待定,4/2/2015 6:26:37 PM

Jerry,444,旅行,$ 22.00,待定,4/2/2015 6:26:47 PM

private void btnModify_Click(object sender, EventArgs e)
    {
        foreach (ListViewItem item in listView1.Items)
            if (item.Selected)
            {                    
                string selected = item.Text.ToString();
                string str;

                double total;
                bool totalCheck = double.TryParse(txtTotal.Text, out total);

                    if (totalCheck)
                    {
                        var lines = File.ReadAllLines("../../textFile/ExpenseReportingData.txt");
                        lines[3] = "7";
                        File.WriteAllLines("../../textFile/ExpenseReportingData.txt", lines);
                    }
                    else
                    {
                        MessageBox.Show("Please Enter A Valid Ammount", "Error");
                    }                    
            }
    }

任何幫助將不勝感激。 謝謝。

編輯特定行上的值,您可以執行以下操作:

for (int i = 0; i < lines.Length; i++)
        {
            string[] lineData = lines[i].Split(',');//split the line into an array ["Smith" ,"4567" ,"Food" ,"$2.00" ,"Pending" ,"4/2/2015 6:26:37 PM"]
            if (lineData[0] == "Smith")//0 is the index of the client name
            {
                lineData[3] = "$4.00";//modifie the value
                lines[i] = String.Join(",", lineData);
                File.WriteAllLines("../../textFile/ExpenseReportingData.txt", lines);
            }
        }

但我不推薦這樣做,您應該使用數據庫來保存數據,並且每個客戶端都必須具有唯一的ID(許多客戶端可以使用相同的名稱,否則會產生問題)

或者您可以嘗試使用XMl / JSON格式的格式作為文本文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM