我在c#应用程序中创建了一个长字符串。我希望它保持在一行,因为这些是用户选择在数据库中更新的字段的标题。 该字符串将用于日志文件中。
当我选择要更新的所有字段时,似乎字符串很长,只能显示在一行中并自动换行。
我很困惑,因为textfile应该能够处理任意长度的字符串(内存允许)而不需要包装。
似乎一旦字符串变得超过大约1050个字符,它就会自动换行。
我的代码如下:
private void UpdateCustomer(string pCurrentFileName, ref StringBuilder log, string date, ref string directoryPath, ref string logFilePath)
{
// set the logfile paths for customer update
directoryPath = Path.Combine(pLogFilePath, "CustomerUpdate_Log_" + date.Replace("/", "").Replace(" ", "").Replace(":", ""));
logFilePath = Path.Combine(directoryPath, "CustomerUpdate.log");
DataSet customerUpdateDataSet = new CustomerUpdateValidator().ImportCustomersForUpdateFromExcelFileToDataSet(pCurrentFileName);
log.Append("-------------------------------------------------------------------------" + "\r\n");
log.Append("Bulk Maintenance Log: Customer Updatess" + "\r\n");
log.Append("-------------------------------------------------------------------------" + "\r\n");
log.Append(date + "\r\n\r\n");
log.Append("Total number of Customer to be updated: " + (customerUpdateDataSet.Tables["CustomerData"].Rows.Count - 2).ToString() + "\r\n\r\n");
log.Append("Data to be Inserted" + "\r\n");
log.Append("-".PadRight(300, '-') + "\r\n\r\n\r\n");
StringBuilder header = new StringBuilder("Row".PadRight(10, ' ') + "\t");
header.Append("URN".PadRight(40, ' ') + "\t");
int count = 0;
// for each row in the grid view
for (int i = 0; i < this.gridView1.DataRowCount; i++)
{
// if the value is checked
if (Convert.ToBoolean(this.gridView1.GetRowCellValue(i, "CheckMarkSelection")))
{
// get the fields from the checked column
string baxiDescription = this.gridView1.GetRowCellValue(i, "SimpleName").ToString();
int size = getSizeFromType(this.gridView1.GetRowCellValue(i, "Type").ToString());
header.Append(baxiDescription.PadRight(size, ' ') + "\t");
count = i;
}
}
header.Append("Result".PadRight(10, ' ') + "\t");
header.Append("Reason".PadRight(30, ' ') + "\t");
log.Append(header.ToString() + "\r\n");
log.Append(new StringBuilder("-".PadRight(header.Length + 60, '-') + "\r\n"));
}
为什么会发生这种情况?
我的数据集:
Wrapped LogFile:
答案 0 :(得分:0)
似乎我正在将生成的字符串保存到.txt文件中,然后在我的日志文件浏览器中打开文本文件,问题与.txt文件有关,而不是我的代码