Tuesday, 28 April 2020

Encrypt and Decrypt string in C#


public string Encrypt(string strInputVal)
{
string strOutputVal = "";
try
{
for (int i = 0; i < strInputVal.Length; i++)
{
strOutputVal = strOutputVal + Convert.ToChar(Encoding.ASCII.GetBytes(strInputVal.Substring(i, 1))[0] - 30);
}
if (strOutputVal != "")
strOutputVal = strOutputVal.Replace("'", "''");
return strOutputVal;
}
catch { return ""; }
}
public string Decrypt(string strInputVal)
{
string strOutputVal = "";
try
{
for (int i = 0; i < strInputVal.Length; i++)
{
strOutputVal = strOutputVal + Convert.ToChar(Encoding.ASCII.GetBytes(strInputVal.Substring(i, 1))[0] + 30);
}
return strOutputVal;
}
catch { return ""; }
}

Convert DataGridView To Datatable in C#


public DataTable ConvertDataGridViewToDatatable(DataGridView dgvObj)
{
DataTable Dt = new DataTable();
try
{
foreach (DataGridViewColumn col in dgvObj.Columns)
{
Dt.Columns.Add(col.HeaderText);
}
foreach (DataGridViewRow row in dgvObj.Rows)
{
DataRow dRow = Dt.NewRow();
foreach (DataGridViewCell cell in row.Cells)
{
dRow[cell.ColumnIndex] = cell.Value;
}
Dt.Rows.Add(dRow);
}
}
catch { }
return Dt;
}

Fill Row Number in DataGridview First Column in C#


public void FillRowNumber(DataGridView grd, DataGridViewRowPostPaintEventArgs e, Form frm)
{
string strRowNumber = (e.RowIndex + 1).ToString();
SizeF size = e.Graphics.MeasureString(strRowNumber, frm.Font);
if (grd.RowHeadersWidth < (int)(size.Width + 20)) grd.RowHeadersWidth = (int)(size.Width + 20);
Brush b = SystemBrushes.ControlText;
e.Graphics.DrawString(strRowNumber, grd.Font, b, e.RowBounds.Location.X + 15, e.RowBounds.Location.Y + ((e.RowBounds.Height - size.Height) / 2));
}

Save Stream As File in C#


public void SaveStreamAsFile(string filePath, Stream inputStream, string fileName)
{
DirectoryInfo info = new DirectoryInfo(filePath);
if (!info.Exists)
{
info.Create();V }
string path = Path.Combine(filePath, fileName);
using (FileStream outputFileStream = new FileStream(path, FileMode.Create))
{
inputStream.CopyTo(outputFileStream);
}
}

Convert CSV File data to DataTable in C#


public static DataTable ConvertCSVtoDataTable(string strFileName, string strFilePath)
{
StreamReader sr = new StreamReader(strFilePath);
string[] headers = sr.ReadLine().Split(',');
DataTable dt = new DataTable();
foreach (string header in headers)
{
dt.Columns.Add(header);
}
while (!sr.EndOfStream)
{
string[] rows = Regex.Split(sr.ReadLine(), ",(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)");
DataRow dr = dt.NewRow();
for (int i = 0; i < headers.Length; i++)
{
dr[i] = rows[i];
}
dt.Rows.Add(dr);
}
return dt;
}

Split XLSX To CSV using C#


string path="your_xlsx_file_path";
string[] strTabs = new[] { "Sheet1", "Sheet2", "Sheet3", "Sheet4", "Sheet5", "Sheet6", "Sheet7", "Sheet8", "Sheet9", "Sheet10"};
SplitExcelToAllCSV(strTabs, path);


private void SplitExcelToAllCSV(string[] SheetNames, string InputFilePath)
{
try
{
XL.Application xlApp = null;
XL.Workbook xlWorkbook = null;
XL.Worksheet xlWorksheet = null;
XL.Range xlRange = null;
xlApp = new XL.Application();
xlWorkbook = xlApp.Workbooks.Open(InputFilePath);
foreach (var SheetName in SheetNames)
{
xlWorksheet = xlWorkbook.Sheets[SheetName];
xlRange = xlWorksheet.UsedRange;
int lastUsedColumn = xlRange.Columns.Count;
int lastUsedRow = 4;//customize this according to requirment
try
{
lastUsedRow = xlWorksheet.Cells.Find("*", System.Reflection.Missing.Value,
System.Reflection.Missing.Value, System.Reflection.Missing.Value,
XL.XlSearchOrder.xlByRows, XL.XlSearchDirection.xlPrevious,
false, System.Reflection.Missing.Value, System.Reflection.Missing.Value).Row;
}
catch { }
object[,] objdata = xlRange.Value2;
StringBuilder sb = new StringBuilder();
for (int xlr = 4; xlr <= lastUsedRow; xlr++)
{
for (int xlc = 1; xlc <= lastUsedColumn; xlc++)
{
sb.Append(objdata[xlr, xlc] + ",");
}
sb.Remove(sb.Length - 1, 1);
sb.AppendLine();
}
File.Delete(Application.StartupPath + @"\" + SheetName + ".csv");
File.WriteAllText(Application.StartupPath + @"\" + SheetName + ".csv", sb.ToString());
Marshal.ReleaseComObject(xlWorksheet);
}
xlWorkbook.Close(false, System.Type.Missing, System.Type.Missing);
xlApp.Quit();
Marshal.ReleaseComObject(xlWorkbook);
Marshal.ReleaseComObject(xlApp);
}
catch
{
}
}

Post Data from xls file using VBA


Public Function PostData(strPayload As String)
Dim oRequest As Object
Set oRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
oRequest.Open "POST", "your_api_url", False
oRequest.SetRequestHeader "Content-Type", "application/json"
oRequest.Send strPayload
strLoginResponse = oRequest.responsetext
If InStr(strLoginResponse, "true") > 0 Then
MsgBox ("Data Syncing Done Sucessfully")
Else
MsgBox ("Data Syncing Failed")
End If
End Function

Tally XML Request Using C#


HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost:9000");
httpWebRequest.Method = "POST";
httpWebRequest.ContentLength = pWebRequstStr.Length;
httpWebRequest.ContentType = "application/x-www-form-urlencoded";
StreamWriter lStrmWritr = new StreamWriter(httpWebRequest.GetRequestStream());
lStrmWritr.Write(pWebRequstStr);
lStrmWritr.Close();
HttpWebResponse lhttpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
Stream lreceiveStream = lhttpResponse.GetResponseStream();
StreamReader lStreamReader = new StreamReader(lreceiveStream, Encoding.UTF8);
lResponseStr2 = lStreamReader.ReadToEnd();
lhttpResponse.Close();
lStreamReader.Close();