Я знаю, что есть некоторые другие вопросы, связанные с моими, но они не очень мне помогают.Я пытался понять концепцию метода String.Format, но мне снова и снова не удавалось, и я до сих пор не понимаю, как использовать его в моем случае.Я знаю, что об этом очень много спрашивают, но если у кого-то есть идея, как выполнить выравнивание, я был бы очень признателен.
Я сохраняю вывод различных таблиц базы данных в разные текстовые файлы.Я хочу выровнять «имя» столбца по его «значению».Это имеет большой смысл, потому что в некоторых таблицах много «нулевых» значений, что приводит к плохо отформатированному выводу.Поскольку «ноль» не экспортируется в этот файл, и поэтому значения перемещаются влево.
private void WriteSQLQueryOutputToTextFile(string DBUser, string DBUserPassword, string sqlQuery, string databaseName, string nameOfOutputFile)
{
string pathOfOutputFile = dWTestResult + "\\DatabaseUpgradeCheck\\" + nameOfOutputFile;
using (SqlConnection sqlCon = new SqlConnection("Data Source=" +
GetEnvironmentVariable.MachineName + "; Initial Catalog=" + databaseName + "; User ID=" + DBUser + "; Password=" + DBUserPassword + ";"))
{
SqlDataAdapter adapter = new SqlDataAdapter(sqlQuery, sqlCon);
try
{
sqlCon.Open();
DataSet dataset = new DataSet();
adapter.Fill(dataset, "nameOfDataset");
string currentLine = "";
foreach (var col in dataset.Tables[0].Columns)
{
currentLine += " " + col.ToString();
}
OutputHandler.AppendDataToFile(pathOfOutputFile, currentLine);
foreach (DataRow row in dataset.Tables[0].Rows)
{
currentLine = "";
foreach (var item in row.ItemArray)
{
currentLine += " " + item.ToString();
}
OutputHandler.AppendDataToFile(pathOfOutputFile, currentLine);
}
}
catch (Exception ex)
{
logger.Debug(ex, "Writing Database Output to the " + "\"" + nameOfOutputFile + "\"" + " file failed");
}
finally
{
sqlCon.Close();
}
}
}