C# 使用SaveFileDialog保存的文件中出现意外字符
代码: 输出C# 使用SaveFileDialog保存的文件中出现意外字符,c#,.net,winforms,savefiledialog,C#,.net,Winforms,Savefiledialog,代码: 输出 我真的不知道如何去掉这些字符。如果要写入文本文件,请不要使用。它附加字符串的长度,这解释了为什么要观察这些奇怪的字符 您可以使用: 或者,在此特定示例中,您可以使用以下方法将所有代码缩短为一行代码: 也要小心!您有一个尾随。这意味着无论用户是否确认或取消文件对话框,对文件的写入将始终发生。请注意我在上一个示例中是如何删除它的。如果要写入文本文件,请不要使用。它附加字符串的长度,这解释了为什么要观察这些奇怪的字符 您可以使用: 或者,在此特定示例中,您可以使用以下方法将所有代码缩短
我真的不知道如何去掉这些字符。如果要写入文本文件,请不要使用。它附加字符串的长度,这解释了为什么要观察这些奇怪的字符 您可以使用: 或者,在此特定示例中,您可以使用以下方法将所有代码缩短为一行代码:
也要小心!您有一个尾随
在您的if
语句之后添加code>。这意味着无论用户是否确认或取消文件对话框,对文件的写入将始终发生。请注意我在上一个示例中是如何删除它的。如果要写入文本文件,请不要使用。它附加字符串的长度,这解释了为什么要观察这些奇怪的字符
您可以使用:
或者,在此特定示例中,您可以使用以下方法将所有代码缩短为一行代码:
也要小心!您有一个尾随在您的if
语句之后添加code>。这意味着无论用户是否确认或取消文件对话框,对文件的写入将始终发生。注意我在上一个示例中是如何删除它的。请尝试:
if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string path = sfd.FileName;
File.WriteAllLines(path, hello);
}
StreamWriter非常适合在文件中写入文本。BinaryWriter将二进制的基本类型写入流,并支持以特定编码写入字符串。尝试:
if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string path = sfd.FileName;
File.WriteAllLines(path, hello);
}
StreamWriter非常适合在文件中写入文本。BinaryWriter将二进制的基本类型写入流,并支持以特定编码写入字符串。要添加,在写入字符串之前,BinaryWriter
会追加字符串的长度(7位编码的二进制形式)。这就是导致问题的原因,在写入字符串之前,BinaryWriter
会追加字符串的长度(7位编码的二进制形式)。这就是导致问题的原因谢谢你和我使用了foreach(hello中的字符串s){sw.WriteLine(s);}
谢谢你和我使用了foreach(hello中的字符串s){sw.WriteLine(s);}
if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string path = sfd.FileName;
File.WriteAllLines(path, hello);
}
StreamWriter sw = new StreamWriter(path);