Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
dotNET Platform
runtime
提交
be3b593e
R
runtime
项目概览
dotNET Platform
/
runtime
12 个月 前同步成功
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
runtime
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
be3b593e
编写于
4月 19, 2021
作者:
D
devsko
提交者:
GitHub
4月 19, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix TimeOnly format O (#51484)
上级
4bcc1c12
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
12 addition
and
3 deletion
+12
-3
src/libraries/System.Private.CoreLib/src/System/Globalization/DateTimeFormat.cs
...rivate.CoreLib/src/System/Globalization/DateTimeFormat.cs
+1
-1
src/libraries/System.Runtime/tests/System/TimeOnlyTests.cs
src/libraries/System.Runtime/tests/System/TimeOnlyTests.cs
+11
-2
未找到文件。
src/libraries/System.Private.CoreLib/src/System/Globalization/DateTimeFormat.cs
浏览文件 @
be3b593e
...
...
@@ -1265,7 +1265,7 @@ internal static bool TryFormatTimeOnlyO(int hour, int minute, int second, long f
destination
[
5
]
=
':'
;
WriteTwoDecimalDigits
((
uint
)
second
,
destination
,
6
);
destination
[
8
]
=
'.'
;
WriteDigits
((
uint
)
fraction
,
destination
.
Slice
(
9
));
WriteDigits
((
uint
)
fraction
,
destination
.
Slice
(
9
,
7
));
return
true
;
}
...
...
src/libraries/System.Runtime/tests/System/TimeOnlyTests.cs
浏览文件 @
be3b593e
...
...
@@ -374,7 +374,7 @@ public static void FormatParseTest()
[
Fact
]
public
static
void
OAndRFormatsTest
()
{
TimeOnly
timeOnly
=
TimeOnly
.
FromDateTime
(
DateTime
.
Today
);
TimeOnly
timeOnly
=
TimeOnly
.
FromDateTime
(
DateTime
.
Now
);
string
formattedDate
=
timeOnly
.
ToString
(
"o"
);
Assert
.
Equal
(
16
,
formattedDate
.
Length
);
Assert
.
Equal
(
':'
,
formattedDate
[
2
]);
...
...
@@ -389,6 +389,7 @@ public static void OAndRFormatsTest()
parsedTimeOnly
=
TimeOnly
.
ParseExact
(
formattedDate
.
AsSpan
(),
"O"
.
AsSpan
());
Assert
.
Equal
(
timeOnly
,
parsedTimeOnly
);
timeOnly
=
new
TimeOnly
(
timeOnly
.
Hour
,
timeOnly
.
Minute
,
timeOnly
.
Second
);
formattedDate
=
timeOnly
.
ToString
(
"r"
);
Assert
.
Equal
(
8
,
formattedDate
.
Length
);
Assert
.
Equal
(
':'
,
formattedDate
[
2
]);
...
...
@@ -465,15 +466,23 @@ public static void TryFormatTest()
Span
<
char
>
buffer
=
stackalloc
char
[
100
];
TimeOnly
timeOnly
=
TimeOnly
.
FromDateTime
(
DateTime
.
Now
);
buffer
.
Fill
(
' '
);
Assert
.
True
(
timeOnly
.
TryFormat
(
buffer
,
out
int
charsWritten
));
Assert
.
Equal
(
charsWritten
,
buffer
.
TrimEnd
().
Length
);
buffer
.
Fill
(
' '
);
Assert
.
True
(
timeOnly
.
TryFormat
(
buffer
,
out
charsWritten
,
"o"
));
Assert
.
Equal
(
16
,
charsWritten
);
Assert
.
Equal
(
16
,
buffer
.
TrimEnd
().
Length
);
buffer
.
Fill
(
' '
);
Assert
.
True
(
timeOnly
.
TryFormat
(
buffer
,
out
charsWritten
,
"R"
));
Assert
.
Equal
(
8
,
charsWritten
);
Assert
.
Equal
(
8
,
buffer
.
TrimEnd
().
Length
);
Assert
.
False
(
timeOnly
.
TryFormat
(
buffer
.
Slice
(
0
,
3
),
out
charsWritten
));
Assert
.
False
(
timeOnly
.
TryFormat
(
buffer
.
Slice
(
0
,
3
),
out
charsWritten
,
"r"
));
Assert
.
False
(
timeOnly
.
TryFormat
(
buffer
.
Slice
(
0
,
3
),
out
charsWritten
,
"O"
));
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录