一直在用DateTime, 却不常用TimeSpan , 今天突然用到了, 发现不知道咋做格式化...百度一下,找到了答案, 在这记录一下, 免得以后找花费时间

以下内容摘抄自 Microsoft Docs  原文地址: https://docs.microsoft.com/en-us/previous-versions/windows/silverlight/dotnet-windows-silverlight/ee372287(v=vs.95)

分别展示了ToString方法跟string.Format方法中的方法, 其中string.Format的用法可以在mvc的Html.TextBox的format参数中使用

这里只记录下基本用法, 更多使用参考请移步上方链接.

TimeSpan转字符串

using System;

public class Example
{
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
TimeSpan duration = new TimeSpan(, , , ); string output = null;
output = "Time of Travel: " + duration.ToString("%d") + " days";
outputBlock.Text += output + Environment.NewLine;
output = "Time of Travel: " + duration.ToString(@"dd\.hh\:mm\:ss");
outputBlock.Text += output + Environment.NewLine; outputBlock.Text += String.Format("Time of Travel: {0:%d} day(s)",
duration) + Environment.NewLine;
outputBlock.Text += String.Format("Time of Travel: {0:dd\\.hh\\:mm\\:ss} days",
duration) + Environment.NewLine;
}
}
// The example displays the following output:
// Time of Travel: 1 days
// Time of Travel: 01.12:24:02
// Time of Travel: 1 day(s)
// Time of Travel: 01.12:24:02 days

字符串转TimeSpan

using System;

public class Example
{
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
string value = null;
TimeSpan interval; value = "";
if (TimeSpan.TryParseExact(value, "%d", null, out interval))
outputBlock.Text += String.Format("{0} --> {1}", value,
interval.ToString("c")) + Environment.NewLine;
else
outputBlock.Text += String.Format("Unable to parse '{0}'", value) + Environment.NewLine; value = "16:32.05";
if (TimeSpan.TryParseExact(value, @"mm\:ss\.ff", null, out interval))
outputBlock.Text += String.Format("{0} --> {1}", value,
interval.ToString("c")) + Environment.NewLine;
else
outputBlock.Text += String.Format("Unable to parse '{0}'", value) + Environment.NewLine; value= "12.035";
if (TimeSpan.TryParseExact(value, "ss\\.fff", null, out interval))
outputBlock.Text += String.Format("{0} --> {1}", value,
interval.ToString("c")) + Environment.NewLine;
else
outputBlock.Text += String.Format("Unable to parse '{0}'", value) + Environment.NewLine;
}
}
// The example displays the following output:
// 6 --> 6.00:00:00
// 16:32.05 --> 00:16:32.0500000
// 12.035 --> 00:00:12.0350000

参数表格

The following table describes the custom date and time format specifiers.

 

Format specifier

Description

Example

"d", "%d"

The number of whole days in the time interval.

More information: The "d" Custom Format Specifier.

new TimeSpan(6, 14, 32, 17, 685):

%d --> "6"

d\.hh\:mm --> "6.14:32"

"dd"-"dddddddd"

The number of whole days in the time interval, padded with leading zeros as needed.

More information: The "dd"-"dddddddd" Custom Format Specifiers.

new TimeSpan(6, 14, 32, 17, 685):

ddd --> "006"

dd\.hh\:mm --> "06.14:32"

"h", "%h"

The number of whole hours in the time interval that are not counted as part of days. Single-digit hours do not have a leading zero.

More information: The "h" Custom Format Specifier.

new TimeSpan(6, 14, 32, 17, 685):

%h --> "14"

hh\:mm --> "14:32"

"hh"

The number of whole hours in the time interval that are not counted as part of days. Single-digit hours have a leading zero.

More information: The "hh" Custom Format Specifier.

new TimeSpan(6, 14, 32, 17, 685):

hh --> "14"

new TimeSpan(6, 8, 32, 17, 685):

hh --> 08

"m", "%m"

The number of whole minutes in the time interval that are not included as part of hours or days. Single-digit minutes do not have a leading zero.

More information: The "m" Custom Format Specifier.

new TimeSpan(6, 14, 8, 17, 685):

%m --> "8"

h\:m --> "14:8"

"mm"

The number of whole minutes in the time interval that are not included as part of hours or days. Single-digit minutes have a leading zero.

More information: The "mm" Custom Format Specifier.

new TimeSpan(6, 14, 8, 17, 685):

mm --> "08"

new TimeSpan(6, 8, 5, 17, 685):

d\.hh\:mm\:ss --> 6.08:05:17

"s", "%s"

The number of whole seconds in the time interval that are not included as part of hours, days, or minutes. Single-digit seconds do not have a leading zero.

More information: The "s" Custom Format Specifier.

TimeSpan.FromSeconds(12.965):

%s --> 12

s\.fff --> 12.965

"ss"

The number of whole seconds in the time interval that are not included as part of hours, days, or minutes. Single-digit seconds have a leading zero.

More information: The "ss" Custom Format Specifier.

TimeSpan.FromSeconds(6.965):

ss --> 06

ss\.fff --> 06.965

"f", "%f"

The tenths of a second in a time interval.

More information: The "f" Custom Format Specifier.

TimeSpan.FromSeconds(6.895):

f --> 8

ss\.f --> 06.8

"ff"

The hundredths of a second in a time interval.

More information: The "ff" Custom Format Specifier.

TimeSpan.FromSeconds(6.895):

ff --> 89

ss\.ff --> 06.89

"fff"

The milliseconds in a time interval.

More information: The "fff" Custom Format Specifier.

TimeSpan.FromSeconds(6.895):

fff --> 895

ss\.fff --> 06.895

"ffff"

The ten-thousandths of a second in a time interval.

More information: The "ffff" Custom Format Specifier.

TimeSpan.Parse("0:0:6.8954321"):

ffff --> 8954

ss\.ffff --> 06.8954

"fffff"

The hundred-thousandths of a second in a time interval.

More information: The "fffff" Custom Format Specifier.

TimeSpan.Parse("0:0:6.8954321"):

fffff --> 89543

ss\.fffff --> 06.89543

"ffffff"

The millionths of a second in a time interval.

More information: The "ffffff" Custom Format Specifier.

TimeSpan.Parse("0:0:6.8954321"):

ffffff --> 895432

ss\.ffffff --> 06.895432

"fffffff"

The ten-millionths of a second (or the fractional ticks) in a time interval.

More information: The "fffffff" Custom Format Specifier.

TimeSpan.Parse("0:0:6.8954321"):

fffffff --> 8954321

ss\.fffffff --> 06.8954321

"F", "%F"

The tenths of a second in a time interval. Nothing is displayed if the digit is zero.

More information: The "F" Custom Format Specifier.

TimeSpan.Parse("00:00:06.32"):

%F: 3

TimeSpan.Parse("0:0:3.091"):

ss\.F: 03.

"FF"

The hundredths of a second in a time interval. Any fractional trailing zeros or two zero digits are not included.

More information: The "FF" Custom Format Specifier.

TimeSpan.Parse("00:00:06.329"):

FF: 32

TimeSpan.Parse("0:0:3.101"):

ss\.FF: 03.1

"FFF"

The milliseconds in a time interval. Any fractional trailing zeros are not included.

More information:

TimeSpan.Parse("00:00:06.3291"):

FFF: 329

TimeSpan.Parse("0:0:3.1009"):

ss\.FFF: 03.1

"FFFF"

The ten-thousandths of a second in a time interval. Any fractional trailing zeros are not included.

More information: The "FFFF" Custom Format Specifier.

TimeSpan.Parse("00:00:06.32917"):

FFFFF: 3291

TimeSpan.Parse("0:0:3.10009"):

ss\.FFFF: 03.1

"FFFFF"

The hundred-thousandths of a second in a time interval. Any fractional trailing zeros are not included.

More information: The "FFFFF" Custom Format Specifier.

TimeSpan.Parse("00:00:06.329179"):

FFFFF: 32917

TimeSpan.Parse("0:0:3.100009"):

ss\.FFFFF: 03.1

"FFFFFF"

The millionths of a second in a time interval. Any fractional trailing zeros are not displayed.

More information: The "FFFFFF" Custom Format Specifier.

TimeSpan.Parse("00:00:06.3291791"):

FFFFFF: 329179

TimeSpan.Parse("0:0:3.1000009"):

ss\.FFFFFF: 03.1

"FFFFFFF"

The ten-millions of a second in a time interval. Any fractional trailing zeros or seven zeros are not displayed.

More information: The "FFFFFFF" Custom Format Specifier.

TimeSpan.Parse("00:00:06.3291791"):

FFFFFF: 3291791

TimeSpan.Parse("0:0:3.1900000"):

ss\.FFFFFF: 03.19

'string'

Literal string delimiter.

More information: Other Characters.

new TimeSpan(14, 32, 17):

hh':'mm':'ss --> "14:32:17"

\

The escape character.

More information: Other Characters.

new TimeSpan(14, 32, 17):

hh\:mm\:ss --> "14:32:17"

Any other character

Any other unescaped character is interpreted as a custom format specifier.

More Information: Other Characters.

new TimeSpan(14, 32, 17):

hh\:mm\:ss --> "14:32:17"

TimeSpan格式化字符串格式(摘)的更多相关文章

  1. JS 字符串转日期格式 日期格式化字符串

    /** * @author 陈维斌 http://www.cnblogs.com/Orange-C/p/4042242.html%20 3 * 如果想将日期字符串格式化,需先将其转换为日期类型Date ...

  2. 第3.11节 Python强大的字符串格式化新功能:format字符串格式化的格式控制

                                                第3.11节 format字符串格式化的格式控制 一.    引言 上节介绍了四种format进行字符串格式化的 ...

  3. VBA 格式化字符串 - Format大全

    VBA 格式化字符串 VBA 的 Format 函数与工作表函数 TEXT 用法基本相同,但功能更加强大,许多格式只能用于VBA 的 Format 函数,而不能用于工作表函数 TEXT ,以下是本人归 ...

  4. Python中用format函数格式化字符串

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存. 1.百分号方式 语法:%[( ...

  5. C#定义类型转化 及 格式化字符串

    operator 关键字 operator 关键字用来重载内置运算符,或提供类/结构声明中的用户定义转换.它可以定义不同类型之间采用何种转化方式和转化的结果. operator用于定义类型转化时可采用 ...

  6. Python格式化字符串~转

    Python格式化字符串 在编写程序的过程中,经常需要进行格式化输出,每次用每次查.干脆就在这里整理一下,以便索引. 格式化操作符(%) "%"是Python风格的字符串格式化操作 ...

  7. 飘逸的python - 增强的格式化字符串format函数

    自python2.6开始,新增了一种格式化字符串的函数str.format(),可谓威力十足.那么,他跟之前的%型格式化字符串相比,有什么优越的存在呢?让我们来揭开它羞答答的面纱. 语法 它通过{}和 ...

  8. [转]:C#的ToString如何格式化字符串

    C 货币 2.5.ToString("C") ¥2.50 D 十进制数 25.ToString("D5") 00025 E 科学型 25000.ToString ...

  9. C#实现类似"hello $world"的格式化字符串方法

    C#自带的string.Format可以格式化字符串,但是还是不太好用,由于格式的字符占位符都是数字,当数目较多时容易混淆.其实可以扩展string的方法,让C#的字符串具备其他的方法,下面介绍一个实 ...

随机推荐

  1. Linux环境下的定时任务(转载)

    今天做了个数据库的备份脚本,顺便系统得学习一下Linux下定时执行脚本的设置.Linux下的定时执行主要是使用crontab文件中加入定制计划来执行,设置比Windows稍微复杂一些(因为没有图形界面 ...

  2. [原][osg][粒子特效]spark粒子特效生成流程

  3. git问题解决(摘录)

    https://blog.csdn.net/dxk539687357/article/details/54629274

  4. spring boot: @Entity @Repository一个简单的数据读存储读取

    spring boot: @Entity @Repository一个简单的数据读存储读取 创建了一个实体类. 如何持久化呢?1.使用@Entity进行实体类的持久化操作,当JPA检测到我们的实体类当中 ...

  5. yii CFormModel中的rules验证机制

    public function rules() { return array( array('username, password', 'required'), array('rememberMe', ...

  6. 20170728xlVba简单的匹配

    Sub MatchData() Dim i As Long, EndRow As Long, Key As String Dim Rng As Range Dim Dic As Object Set ...

  7. codeforces 484b//Maximum Value// Codeforces Round #276(Div. 1)

    题意:给一个数组,求其中任取2个元素,大的模小的结果最大值. 一个数x,它的倍数-1(即kx-1),模x的值是最大的,然后kx-2,kx-3模x递减.那么lower_bound(kx)的前一个就是最优 ...

  8. php--------合并2个数字键数组的值

    开发中遇到了,数组合并并去除重复这个功能,查阅资料, 找到了一个方法,分享一下. <?php /** * PHP合并2个数字键数组的值 * * @param array $arr1 * @par ...

  9. Fair CodeForces - 987D (bfs)

    链接 大意:给定无向图边权均为1, 每个节点有一种货物, 对于每个节点, 求出拿到$s$种不同货物的最短距离 (每种货物独立计算,并且不用返回) 因为$s$较小, 直接枚举每种货物即可 所以问题就转化 ...

  10. Weird journey CodeForces - 788B (路径计数)

    大意:$n$结点$m$条边无向图, 满足 $(1)$经过$m-2$条边$2$次 $(2)$经过其余$2$条边$1$次 的路径为好路径, 求所有好路径数 相当于边加倍后再删除两条边, 求欧拉路条数 首先 ...