用TStringList的CommaText属性解析CSV文件非常的方便,可是如果字符串中有空格,会被像逗号一样转成新行。比如:
Your Company Name,Test
上面的字符应该被解析成两行,但CommaText默认会解析成:
Your
Company
Name
Test
上网查了一下,有人说可以替换空格为特殊字符,解析完再替换回来,还有的说是VCL代码有问题,要修改TStringlist的源代码。仔细想想,真的要这么麻烦吗?其实TStringList有一个属性设置下就好了
StrictDelimiter := True;
帮助上是这么说的:
Determines how the Delimiter property is used.
Use this property to specify whether the Delimiter is the only value used within the DelimitedText property. If set to True, individual strings in DelimitedText are separated only by the ch