当前位置:编程学习 > C#/ASP.NET >>

关于srting中的\0问题

我有一段程序,从一个数据库中获取了一个值赋给String型变量 StrTemp
调试看到StrTemp信息的值为 "中国万岁\0天\0万恶的\0"
其实真是数据是:"中国万岁"
\0不是结束符号么,先不管这StrTemp是怎么得到的
怎么把它变成正常的string值呢?
我试过:StrTemp写入TreeList还是"中国万岁\0天\0万恶的\0"
但是赋给textBox就成了"中国万岁"

这到底是什么情况,如何解决?
谢谢大家 --------------------编程问答-------------------- 你是怎么存的?不行就替换掉\0 --------------------编程问答-------------------- TextBox是不是单行,不支持换行。

估计是没有显示完整。 --------------------编程问答-------------------- 将 SelectionIndent 属性设置为一个整数,该整数表示控件的左边缘和文本的左边缘之间的距离(以像素为单位)。

将 SelectionHangingIndent 属性设置为一个整数,该整数表示段落中第一行文本的左边缘与同一段落中后面的行的左边缘之间的距离(以像素为单位)。 SelectionHangingIndent 属性的值只适用于段落换行后第一行下面的行。 

将 SelectionRightIndent 属性设置为一个整数,该整数表示控件的右边缘与文本的右边缘之间的距离(以像素为单位)。
richTextBox1.SelectionIndent = 8;
richTextBox1.SelectionHangingIndent = 3;
richTextBox1.SelectionRightIndent = 12;
--------------------编程问答-------------------- lz  贴出代码
up... --------------------编程问答-------------------- 我的意思就是不要\0后面的数据
取值的时候不知道怎么多出来那些数据了..... --------------------编程问答--------------------  string s = "中国万岁\0天\0万恶的\0";
        int i = s.IndexOf('\0');
        s = s.Substring(0, i); --------------------编程问答-------------------- 输出看看是不是还有在讲吧 --------------------编程问答-------------------- 建议你直接替换掉特殊字符,如果一定要有原文,至少拿替换后的文本给TextBox显示,很多控件不支持显示\0,但是那个的确也是一个字符,所以String支持带有\0的字符串。
至于代码,很简单:

string tmp = "中国万岁\0天\0万恶的\0";
textBox1.Text = tmp.Replace("\0"," ");

这里替换为了空格,你也可以替换为空字符串。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,