static void Main(string[] args)
var fileProcessor = new FileProcessor(@"D:\data.csv");
Console.WriteLine("File processed successfully.. !!");
public class FileProcessor
private readonly string _filePath;
private readonly DataTable _data;
public FileProcessor(string filePath)
_data.Columns.Add("PatientId");
_data.Columns.Add("FirstName");
_data.Columns.Add("LastName");
_data.Columns.Add("FullName");
var fileContent = File.ReadAllLines(_filePath);
foreach (var line in fileContent)
var arr = line.Split(',');
var dataRow = _data.NewRow();
dataRow["PatientId"] = int.Parse(arr[0]);
dataRow["FirstName"] = arr[1];
dataRow["LastName"] = arr[2];
private void ApplyBusinessLogic()
foreach (DataRow dataRow in _data.Rows)
dataRow["FullName"] = dataRow["FirstName"] + ", " + dataRow["LastName"];
var output = new StringBuilder();
foreach (DataRow dataRow in _data.Rows)
output.AppendLine($"{dataRow["PatientId"]}, {dataRow["FirstName"]}, {dataRow["LastName"]}, {dataRow["FullName"]}");
File.WriteAllText(_filePath, output.ToString());