C#文本操作

C#文本操作(1)

------C#將數據寫入txt文本文件

爲了項目需要,最近學習了C#中的文件操作,C#中對文本文件的操作是通過StreamReader和StreamWriter兩個類提供的方法來實現的,對二進制文件的操作是通過BinaryReader和BinaryWriter兩個類提供的方法實現的。 我使用的是對二進制文件進行的操作,這種方式也比較方便,能夠顯示一定大小的文本,以及各種類型數據;在WPF應用程序中點擊按鈕觸發,將datagrid的數據保存到指定的txt文件中,並能夠通過按鍵觸發將txt文件中的數據導入到datagrid。

1.下方是寫入文件的代碼
用的編譯器數VS2017,編譯時報錯文件格式不支持,後來找到了解決方案
將此處的path換成文件的絕對路徑不再報錯,不使用path傳參

private void Button_Click_6(object sender, RoutedEventArgs e)
        {
            time.Stop();
            int i = 0;
            string path =@"h:\chartdata.txt";//創建txt文件地址
            foreach(Customer custome in customerTest)//將遍歷列表中的所有元素,並保存到結構體數組中
            {
                st[i].num =custome.Num;
                st[i].value =custome.Temperature;
                st[i].datetime = custome.Time.ToString();
                i++;
            }
            if (File.Exists(path))//如果文件存在將刪除文件
                File.Delete(path);
            FileStream fs = File.OpenWrite(@"h:\chartdata.txt");//創建文件
            BinaryWriter sb = new BinaryWriter(fs, Encoding.Default);//Default爲默認的字體編碼規則
            for(int j=0;j<i;j++)//將結構體中的成員寫入文件中
            {
                sb.Write(st[j].num+"\t");//可以自由設置換行,空格
                sb.Write(st[j].value+"\t");
                sb.Write(st[j].datetime+"\r\n");

            }
            MessageBox.Show("導入成功");//設置提示框
            sb.Close();
            sb.Close();//關閉文件
        }

寫入文件時遇到一個小問題,文件中在出現正方形,網上未找到解決方案,將寫入txt的數據進行打印並未出現小框。讀取數據時也沒有出現類似小框。
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章