我正在使用此代码从datagridview导出到* .txt文件
TextWriter sw = new StreamWriter(@"C:\fiscal.txt");
int rowcount = dataGridView1.Rows.Count;
for (int i = 0; i < rowcount - 1; i++)
{
sw.Write("{0,-20}", dataGridView1.Rows[i].Cells[0].Value.ToString());
}
sw.Close();
但如果我的datagridview的单元格大于20 letters
,我想删除其余的单元格。并且只导出我的前20个字母。
答案 0 :(得分:4)
希望Substring()
会以下列方式帮助您:将代码段包含在for
string tempString = dataGridView1.Rows[i].Cells[0].Value.ToString();
if(tempString.Length>20)
tempString=tempString.Substring(0,20);
else
{
tempString = tempString.PadRight(20); //use this if you need space after the word
tempString = tempString.PadLeft(20); //use this if you need space before the word
}
sw.Write(tempString);
更新:根据op的评论:
您可以使用Padding将空字符串附加到您的实际字符串中。 C#提供了两个填充选项,例如右边填充和左边填充。
PadRight在字符串右侧添加空格。 PadLeft同时补充道 向左转。这些方法使文本更易于阅读。填充字符串 在开头或结尾添加空格或其他字符。任何 字符可以用于填充。