DelphiFAQ Home Search:

CompareString() versus AnsiCompareString()

 

commentsThis article has not been rated yet. After reading, feel free to leave comments and rate it.

Question:

What is the difference between CompareString() and AnsiCompareString()?


Stefan Hoffmeister explains:

Some languages have characters outside of the ASCII character set; these two strings will compare differently depending on whether you use CompareString or AnsiCompareString:

CompareString()
'das'
'dau'
'daß'

'ß' is a German character, and with AnsiCompareString, the correct lexical order returned would be different:

AnsiCompareString()
'das'
'daß'
'dau'
AnsiCompareString observes the lexical order of your current locale - while CompareString only looks at the bits and bytes of the data. If you want to compare 'text', then do use AnsiCompareString. If you want to compare ASCII-only text (or just bytes), then use CompareString.

Comments:

 

 

Email address (not necessary):

Rate as
Hide my email when showing my comment.
Please notify me once a day about new comments on this topic.
Please provide a valid email address if you select this option.
 
It seems that you are
from Washington, US .

Info/ Feedback on this

Show city and country
Show country only
Hide my location
You can mark text as 'quoted' by putting [quote] .. [/quote] around it.
Please type in the code:
photo Add a picture:

Please do not post inappropriate pictures. Inappropriate pictures include pictures of minors and nudity. The owner of this web site reserves the right to delete such material.