2015-04-03 462 views
0

我有一個文本文件,我試圖編輯。基本上,該文本文件包含業務請求的數據。因此,它將按照該順序存儲名稱,員工ID,請求類型,請求總數,請求狀態以及日期和時間。我必須能夠編輯選定行的總金額。我正在使用列表視圖來選擇項目。舉例來說,我不得不接受史密斯的請求,並編輯$ 2.00並將其改爲例如$ 4.00。C#編輯文本文件

瑞安搖滾,345,食品,$ 456.00,待定,第4 /二千○十五分之二下午3點48分45秒

史密斯,4567,食品,$ 2.00,掛起,第4 /二千零十五​​分之二6:26 :37 PM

傑裏,444,旅遊,$ 22.00,掛起,第4 /二千○十五分之二下午6時26分47秒

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"); 
        }      
      } 
    } 

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

+0

嗯一部分不包括在你的文本文件編碼框。不知道爲什麼,但其上面發佈。對不起,如果我看起來像這樣的菜鳥。我在我的第一個C#類。 – starkiller1226 2015-04-03 00:21:04

+0

等待,它現在在那裏。所以我所有的代碼都在框中。再次抱歉。 – starkiller1226 2015-04-03 00:25:09

+0

我修復了您的代碼塊,第一行必須縮進4個空格。我還爲您的文件結構使用了一個報價塊。如果您的格式有問題,您可以使用問題下標記下的「編輯」鏈接編輯您的問題。如果您需要更多格式幫助,請點擊[幫助頁面](https://stackoverflow.com/editing-help) – 2015-04-03 00:26:05

回答

0

到特定的某一行編輯值u可以做這樣的事情:

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類型

我的代碼
+0

感謝您的幫助。經過幾次更改後,工作就完成了,所以我可以通過文本框對其進行修改。這應該是完美的,因爲它是初學者的課程,但我會爲未來的項目記住數據庫建議。 – starkiller1226 2015-04-03 01:03:18