Die Ausgabe: 47,9%
Was soll ich an ToString () übergeben, um das Prozentzeichen für die Ausgabe wie folgt zu entfernen:
47.9
BEARBEITEN. Ich hätte erwähnen sollen, dass ich die Maske an eine Komponente von Drittanbietern übergebe, die damit fertig wird. Mit den Nummern kann ich leider keine Akrobatik machen. Es muss die Maske sein, die den Trick macht.
Ich hätte erwähnen sollen, dass ich es bin Weitergabe der Maske an eine dritte Partei Komponente, mit der es funktioniert es. Ich kann keine Akrobatik machen mit den Zahlen leider. Es hat um die Maske zu sein, die den Trick macht.
Ich nehme also an, dass Sie mit Float.ToString(String)
festhängen und dass Sie nur die p1
in f.ToString("p1")
bearbeiten können. Das ist jetzt schwierig. Wenn Sie keine Angst haben, etwas mit den implizierten Änderungen zu brechen, könnten Sie Folgendes tun:
Das numerische Format "P", wie in auf MSDN dokumentiert, verwendet NumericFormatInfo.PercentSymbol
, um das Zeichen "%" zu schreiben. NumericFormatInfo
ist ein Mitglied Ihrer aktuellen CultureInfo
. Was Sie tun könnten, ist, klonen Sie Ihre CurrentCulture
, und ändern Sie das PercentSymbol in ""
wie folgt:
Dies wäre der Weg, wenn Sie den ToString-Aufruf nicht ändern möchten.
Wie wäre es mit den folgenden?
%Vor%z.B. f = 0,4792 - & gt; "47.9"
Eine Liste und Beschreibungen des standardmäßigen numerischen Formats finden Sie hier auf MSDN , für den Fall, dass dies der Fall ist hilft.
Könnte es versuchen
%Vor% Oder, wenn Sie kein Leerzeichen möchten, verwenden Sie Replace('%','
ToString()
')
BEARBEITEN: Wenn Sie nur die NumberFormatInfo
-Methode verwenden können, könnten Sie ein NumberFormatInfo
-Objekt erstellen, das Prozentzeichen auf leer setzen und es an die Methode übergeben.
( System.Globalization
ist im Namensraum %code% )
z.B.