簡體   English   中英

Microsoft文檔中的C#String.Length

[英]C# String.Length from Microsoft Documentation

Microsoft文檔指出此代碼將返回7個字符

Length屬性返回此實例中Char對象的數量,而不是Unicode字符的數量。

string characters = "abc\u0000def";
Console.WriteLine(characters.Length);    // Displays 7

我將需要一個函數來返回結果12,因為有12個不同的字符。 我可以使用哪個功能?

您將必須防止編譯器對文字進行解釋。 可以使用@前綴完成此操作,如下所示:

var characters = @"abc\u0000def";

然后,該字符串的Length屬性將返回12,但是字符串中將不再有實際的unicode字符。

C#編譯器將\替換為空字節。 這意味着,在執行時,您的內存中僅會包含7個字符。

如果您不希望編譯器替換特殊字符,則必須首先轉義反斜杠:

string characters = "abc\\u0000def";
Console.WriteLine(characters.Length);    // Displays 12

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM