溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C#怎么實(shí)現(xiàn)DataTable轉(zhuǎn)TXT、CSV文件

發(fā)布時(shí)間:2022-04-11 10:56:58 來源:億速云 閱讀:186 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹了C#怎么實(shí)現(xiàn)DataTable轉(zhuǎn)TXT、CSV文件的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇C#怎么實(shí)現(xiàn)DataTable轉(zhuǎn)TXT、CSV文件文章都會(huì)有所收獲,下面我們一起來看看吧。

轉(zhuǎn)TXT文件

public object DataTableToTXT(DataTable vContent, string vOutputFilePath)
        {
            object resObj;
            StringBuilder sTxtContent;

            try
            {
                if (File.Exists(vOutputFilePath))
                    File.Delete(vOutputFilePath);

                sTxtContent = new StringBuilder();

                //數(shù)據(jù)
                foreach (DataRow row in vContent.Rows)
                {
                    for (int i = 0; i < vContent.Columns.Count; i++)
                    {
                        sTxtContent.Append(row[i].ToString().Trim());
                        sTxtContent.Append(i == vContent.Columns.Count - 1 ? "\r\n" : "\t");
                    }
                }
                File.WriteAllText(vOutputFilePath, sTxtContent.ToString(), Encoding.Unicode);
                resObj = new object[] { 0, "OK" };
            }
            catch (Exception ex)
            {
                resObj = new object[] { 0, "OK" };
            }
            return resObj;
        }

轉(zhuǎn).CSV文件

將DataTable轉(zhuǎn)換成CSV文件是一種常見的轉(zhuǎn)換形式,主要通過遍歷Table的每行,再對(duì)每行遍歷每列,實(shí)現(xiàn)對(duì)數(shù)據(jù)的讀取,然后用分隔符分隔Table的每個(gè)欄位數(shù)據(jù),把讀取的字符寫入到CSV文件中。這里每個(gè)欄位之間用逗號(hào)分隔,每行用換行符。實(shí)現(xiàn)代碼如下:

public ExecutionResult DataTableToCsv(System.Data.DataTable vContent, string vOutputFilePath)
        {
            ExecutionResult sResult = new ExecutionResult();
            System.Text.StringBuilder sCsvContent;
            try
            {
                sCsvContent = new System.Text.StringBuilder();
                //欄位
                for (int i = 0; i < vContent.Columns.Count; i++)
                {
                    sCsvContent.Append(vContent.Columns[i].ColumnName);
                    sCsvContent.Append(i == vContent.Columns.Count - 1 ? "\r\n" : ",");
                }
                //數(shù)據(jù)
                foreach (System.Data.DataRow row in vContent.Rows)
                {
                    for (int i = 0; i < vContent.Columns.Count; i++)
                    {
                        sCsvContent.Append(row[i].ToString().Trim());
                        sCsvContent.Append(i == vContent.Columns.Count - 1 ? "\r\n" : ",");
                    }
                }
                File.WriteAllText(vOutputFilePath, sCsvContent.ToString(), Encoding.UTF8);
                sResult.Status = true;
            }
            catch (Exception ex)
            {
                sResult.Message = ex.Message;
                sResult.Status = false;
            }
            return sResult;
        }

關(guān)于“C#怎么實(shí)現(xiàn)DataTable轉(zhuǎn)TXT、CSV文件”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“C#怎么實(shí)現(xiàn)DataTable轉(zhuǎn)TXT、CSV文件”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI