Ich habe gerade begonnen, Unity zu verwenden, und ich weiß nicht, wie Skripts während der Arbeit in meinem Code Designer VS ordnungsgemäß debuggen.String.Format und TimeSpan Probleme
Ich habe diesen Code in einem Skript, das macht mir nicht das Format Ich mag:
private string GetTimeElapsedAsString()
{
TimeSpan timeElapsed = DateTime.Now.Subtract(_startTime);
return string.Format("{0:mm} {1:ss} {2:ff}", timeElapsed.TotalMinutes, timeElapsed.TotalSeconds, timeElapsed.TotalMilliseconds);
}
Was ich will, ist so etwas wie diese: „00.07.32“ im gegebenen Format: „mm: ss: ff "
Ich möchte nur den einfachsten Weg, alle außer 2 Ziffern von jeder Zeiteinheit abgeschnitten. Irgendwelche Ideen?
Grüße Kalrin.
BEARBEITEN (fortgeschritten): Ich habe den Code geändert. Jetzt sieht es so aus:
private string GetTimeElapsedAsString()
{
TimeSpan timeElapsed = DateTime.Now.Subtract(_startTime);
return string.Format("{0:00}:{1:00}:{2:00}", timeElapsed.Minutes, timeElapsed.Seconds, timeElapsed.Milliseconds);
}
Noch wenn ich mein Spiel zu testen, ich 3 Ziffern Anzeige Millisekunden - Warum ist das passiert ??
sieht wie folgt aus: UI Text component in Unity
EDIT: ich eine Lösung für meine letzte Frage gefunden:
return string.Format("{0:00}:{1:00}:{2}", timeElapsed.Minutes, timeElapsed.Seconds, timeElapsed.Milliseconds.ToString().Substring(0,2));
Alles, was ich eine .Substring zu schaffen erforderlich war (0,2), die nur die 2 erste Ziffern der Ganzzahl.
Thx für diejenigen, die versucht haben zu helfen! Sieht gut aus !!:
Prost!
Dank das funktioniert! :) Kannst du mir sagen, Wetter gibt es einen besseren Weg, es zu tun? Kann ich im IFormatProvider auch ":" zwischen jeder Einheit einfügen? – Kalrin
Sie können ':' s in die Zeichenfolge selbst einfügen. – SLaks
Danke! - Würdest du mir meinen Beitrag in der Post ansehen? - Scheint, ich habe 3 Ziffern im letzten Format (die Millisekunden). – Kalrin