【发布时间】:2013-06-28 17:29:18
【问题描述】:
我有一个带有多行文本框的 WinForms 应用程序。我正在按如下方式填充文本框:
TextBox1.Text = File.ReadAllText(filename);
问题是某些文件中包含二进制字符,包括'\0',并且文本框在该点截断了文本。
我理解这样做的原因(在内部,控件使用'\0' 表示字符串结束);但是,我可以将这些文件加载到记事本中。我认为记事本使用与文本框相同的编辑控件。
有没有办法复制记事本的功能?这些是旧的 .WRI 文件,如果有帮助的话,记事本会报告这些文件是使用 UTF8 加载的。
【问题讨论】:
-
您的文本框如何显示
\0? -
最好是记事本的方式。我不在乎它是显示它还是隐藏它。我只是不希望它截断后面的内容。
-
为什么不直接从字符串中删除呢?
-
是的,你是对的。我只是想弄清楚记事本是如何做到的。但是,现在我想起来,这可能正是 NotePad 所做的。
标签: c# .net winforms encoding textbox