Create Text File using C#

  1. private void btnCBSUpload_Click(object sender, EventArgs e) {  
  2.     string M_FLNM, m_Str;  
  3.     StreamWriter STRWRT;  
  4.     // SqlDataReader drUpload;  
  5.     if (txtCBSAccNo.Text.Trim().Length == 0) {  
  6.         MessageBox.Show("Please Enter CMS A/c No");  
  7.         txtCBSAccNo.Focus();  
  8.         return;  
  9.     }  
  10.     if (txtCBSupload.Text.Trim().Length == 0) {  
  11.         MessageBox.Show("Please Enter File Description");  
  12.         txtCBSupload.Focus();  
  13.         return;  
  14.     }  
  15.     //if (txtLOC_code.Text.Trim() == "")  
  16.     //{  
  17.     // MessageBox.Show("Please Enter Location");  
  18.     // txtCBSupload.Focus();  
  19.     // return;  
  20.     //}  
  21.     //if (txtDepoSiteSlip.Text.Trim() == "")  
  22.     //{  
  23.     // MessageBox.Show("Please Enter Deposite Slip no.");  
  24.     // txtCBSupload.Focus();  
  25.     // return;  
  26.     //}  
  27.     FLNM = @"" + lworkPath + DateTime.Today.ToString("ddMMyyyy");  
  28.     if (!Directory.Exists(FLNM)) {  
  29.         Directory.CreateDirectory(FLNM);  
  30.     } else {  
  31.         Directory.CreateDirectory(FLNM);  
  32.     }  
  33.     // M_FLNM = @"C:\ADROIT\CTS\CBS_" + txtCBSupload.Text.Trim().ToUpper().Substring(0, Math.Min(4, txtCBSupload.Text.Length)) + "_" + DateTime.Today.ToString("ddMMyyyy") + ".txt";  
  34.     //M_FLNM = lworkPath + DateTime.Today.ToString("ddMMyyyy") + "\\" + "CBS_" + txtCBSupload.Text.Trim().ToUpper().Substring(0, Math.Min(4, txtCBSupload.Text.Length)) + "_" + DateTime.Today.ToString("ddMMyyyy") + ".txt";  
  35.     M_FLNM = lworkPath + DateTime.Today.ToString("ddMMyyyy") + "\\" + "CBS_" + txtCBSupload.Text.Trim().ToUpper().Substring(0, Math.Min(4, txtCBSupload.Text.Length)) + "_" + DateTime.Today.ToString("ddMMyyyy") + ".txt";  
  36.     if (!File.Exists(M_FLNM)) {  
  37.         STRWRT = new StreamWriter(M_FLNM);  
  38.     } else {  
  39.         GC.Collect();  
  40.         GC.WaitForPendingFinalizers();  
  41.         File.Delete(M_FLNM);  
  42.         STRWRT = new StreamWriter(M_FLNM);  
  43.     }  
  44.     m_Str = (" SELECT LEFT(ENDNO,5) AS MACHINEID,ENDNO AS SEQNO,CHEQUENUMBER AS CHQNO,BRANCHCODE AS SORTCODE,TRANSACTION_CODE AS TRCD, AMOUNT AS CHQAMT, " +  
  45.         " PRESENTATIONDATE AS BANKING_DATE FROM OUTWARDBATCHSCANDETAILS WHERE CONVERT(VARCHAR,PRESENTATIONDATE,103)='" + maskCleringDate.Text + "' AND " +  
  46.         " (IsChequeStatus <> 'R' or IsChequeStatus is null) AND BATCHHID IN (SELECT DISTINCT BATCHID FROM OUTWARDBATCH WHERE CONVERT(VARCHAR,PRESENTATIONDATE,103)='" + maskCleringDate.Text + "' AND " +  
  47.         " BATCHNO BETWEEN " + txtBatchFrm.Text + " AND " + txtbatchToo.Text + " AND BATCHSTATUSID=8) ORDER BY UPLOAD_ID ");  
  48.     string maskCleringdt = Convert.ToDateTime(maskCleringDate.Text).ToString("yyyyMMdd");  
  49.     //drUpload = pr_ExeDataReader(m_Str);  
  50.     DataTable dt = clscom.GetTable4Command(m_Str);  
  51.     if (dt.Rows.Count == 0) {  
  52.         MessageBox.Show("No Data Found..");  
  53.         return;  
  54.     }  
  55.     if (dt != null) {  
  56.         //for (int i = 0; i < dt.Rows.Count; i++)  
  57.         foreach(DataRow item in dt.Rows) {  
  58.             STRWRT.WriteLine(string.Format("{0,-16}{1,-3}{2,17}{3,-1}{4,-30}{5,16}{6,17}{7,-3}{8,-9}{9,-6}{10,-6}{11,-1}{12,-1}{13,-16}{14,-8}{15,-30}{16,-5}{17,-16}{18,-34}{19,-34}{20,-40}{21,-50}{22,-50}{23,-50}{24,-50}{25,-90}",  
  59.                 txtCBSAccNo.Text, "INR", Convert.ToDecimal(item["CHQAMT"]).ToString("0.00").Trim().PadLeft(17, '0').Substring(0, 17), "", item["CHQNO"], item["CHQNO"], Convert.ToDecimal(item["CHQAMT"]).ToString("0.00").Trim().PadLeft(17, '0').Substring(0, 17), item["TRCD"].ToString().PadRight(3, ' '), item["SORTCODE"], " "" ""N""Y"" ", maskCleringdt, " "" "" "" "" "" ", txtCBSupload.Text, " "" "" "" "));  
  60.         }  
  61.     } else {  
  62.         MessageBox.Show("No Data Found..");  
  63.         return;  
  64.     }  
  65.     STRWRT.Close();  
  66. }  
  67. }