我正在填充包含重音符号的字符串。但是,由于它包含的重音,最终的字符串长度更大。我想这与ASCII / Unicode的差异有关,但我还没弄清楚确切的原因。
我已经尝试过了: myString =“SanJosédelCabo”; myString.PadRight('',20);
和
myString = "San José del Cabo";
string.format("{0,-20}", myString);
实际结果是21个字符。
C#中是否有内置方法考虑字符串编码以返回正确的最终长度?
提前致谢
答案 0 :(得分:0)
您可以从StringInfo.LengthInTextElements中获得所需的长度。它可能看起来像:
var si = new StringInfo(myString);
int length = si.LengthInTextElements;