簡體   English   中英

將長字符串格式化為短字符串C#

[英]Format a long string into a short string C#

我有一些字符串,如:

1.5555555555555
2.3421354325435354545
4.509019292

我想將它們格式化為一個字符串,例如:

1.5555
2.3421
4.5090

我試圖使用C#String.Format,但我不能讓它正確工作。

有人可以給我正確的c#聲明來完成這個嗎?

謝謝。

string.Format("{0:N4}",decimalValue);

標准數字格式字符串

自定義數字格式字符串

目前還不清楚你是否總是在處理數值。 如果您想避免將字符串解析為數字,可以嘗試這樣的方法:

public static string TrimTo(string str, int maxLength)
{
    if (str.Length <= maxLength)
    {
        return str;
    }
    return str.Substring(0, maxLength);
}

這會將提供的字符串修剪為六個字符(如果長度超過六個字符)。 似乎是你想要的,但(正如Kees指出的那樣),會用“1234567.890”這樣的字符串做一些意想不到的事情。

這里條件子句是必需的,因為如果第二個索引在字符串之外, String.Substring會抱怨(如果字符串比maxLength短,換句話說)。

(如果您已經使用過C#3.0 擴展方法 ,您可能會認識到這一點,從上面稍作修改,作為一個絕佳的機會: string trimmed = s.TrimTo(10);

如果將字符串轉換為雙精度數,則可以使用String.Format指定在將其重新格式化為字符串時要包含的小數位數。

String.Format("{0:0.0000}", double.Parse("1.55555555555555"))

暫無
暫無

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

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