Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 字符串a="&引用;和字符串b="&引用;不是一回事吗?_C#_String_Winforms - Fatal编程技术网

C# 字符串a="&引用;和字符串b="&引用;不是一回事吗?

C# 字符串a="&引用;和字符串b="&引用;不是一回事吗?,c#,string,winforms,C#,String,Winforms,在网上搜索时,我发现如果一个字符串包含“空格”,那么这个字符串就不是空字符串 因此: 我现在的问题是: 1) 我怎么知道我想让a=“”和b=“”是一回事 2) 为什么当我从数据库中填充字符串b时,它会给我添加这个“空格”,而数据库中的空格只是一个空单元格?否 声明为字符串的字符串。空或“”与带“”的字符串不同。 空白是一个字符,当它位于字符串中时,它就不再是null或空的 您可以查看: 这一个告诉你它是空的还是空的(“”) 因此,要回答您的问题: 1) 你永远也做不到,因为这不是一回事。 您可以

在网上搜索时,我发现如果一个字符串包含“空格”,那么这个字符串就不是空字符串

因此:

我现在的问题是:

1) 我怎么知道我想让
a=“”
b=“”
是一回事

2) 为什么当我从数据库中填充字符串
b
时,它会给我添加这个“空格”,而数据库中的空格只是一个空单元格?

声明为字符串的字符串。空或“”与带“”的字符串不同。 空白是一个字符,当它位于字符串中时,它就不再是null或空的

您可以查看:

这一个告诉你它是空的还是空的(“”)

因此,要回答您的问题: 1) 你永远也做不到,因为这不是一回事。 您可以临时修剪空白,使其为空。 比如:

然后检查它是否为Null或空,并使用临时字符串

if(string.IsNullOrEmpty(temp))
{
}
或者直接检查string.IsNullOrWhiteSpace()

2) 这意味着数据库中有空格,而不是空单元格。 如果使用,则可以删除数据库中的所有空白单元格

UPDATE tableName SET columnName='' WHERE columnName='   ';
如果每个“空”单元格的空格数相同。 如果没有,您可以查看这里:
1)
string.Trim
是你的朋友。2) 取决于您的数据库以及如何从中获取值。你怎么看“它添加了空格”?你能发布文档吗?@HimBromBeere我更倾向于使用
string.IsNullOrWhiteSpace
,而不是创建新字符串。@OliveroSRL你的数据库可能添加了尾随空格,因为你的列是
char(50)
,而不是
varchar(50)
。Olivero,你似乎忽略了一个关键点:它们是不平等的。他们永远不会。因此,您需要操纵字符串,使其相等,或者执行自定义逻辑测试,以定义相等的版本。
var temp = StringWithWhiteSpace.Replace(" ", string.Empty);
if(string.IsNullOrEmpty(temp))
{
}
UPDATE tableName SET columnName='' WHERE columnName='   ';