问题描述
如图,DataGridView在读取的时候会多出来个字?但是虽然Listview也多出来个字,却不会显示后的数,只显示正常数据?
解决方案
解决方案二:
完全无法理解为何会显示不同根据我浅薄的知识,我只能觉得是不是数据库字段不是varchar而是char所以才会多出字
解决方案三:
有的时候有多字,有的时候没有多字。还是个随机的字。
解决方案四:
可能是datagride在cellDrawn的处理上不一样,后生的Listview则没这问题改成nchar或者nvarchar吧
解决方案五:
C#在执行字符数组和字符串之间转换的时候,跟C++不同C++字符串以作为结尾,之后的字符直接舍弃而C#会把和之后的部分都当字符串转换很明显,你数据库中的数据是通过C++写进去的,而且是以数组的形式而不是字符串的形式写进去,是固定长度的所以之后的部分也写进去了而C#处理的时候,当做空字符处理,而不是字符串结尾,所以之后的内容也会显示出来
解决方案六:
至于Listview,应该内部做了处理,不是直接ToString拉倒
解决方案七:
那应该怎么处理呢?让DataGridView不显示后面的数,只显示正确的数?
时间: 2024-08-01 09:15:07