2 回答
TA贡献1893条经验 获得超10个赞
您可以将文本用引号 ( ') 括起来,它会输出您想要的格式。
dt.ToString("ddd MMM dd HH:mm:ss '" + myText + "' yyyy", CultureInfo.InvariantCulture);
// output
Tue Apr 02 12:37:49 hello world 2019
h它与fromhello和dfrom which相匹配,world这就是您看到该结果的原因。
您可以查看 Microsoft 的Custom date and time format strings,其中有一个关于引号的部分(靠近底部)。在 DateTime 格式(或数字格式)中包含引号(单引号'或双引号)会在生成的字符串格式中引入字符串文字。"
正如@Dmitry 在评论中指出的那样,您可能需要使用myText?.Replace("'", "''")if'出现在您的字符串中。另一种选择是像往常一样使用双引号和转义:
dt.ToString("ddd MMM dd HH:mm:ss \"" + myText + "\" yyyy", CultureInfo.InvariantCulture);
TA贡献1909条经验 获得超7个赞
用多行来做这个可以接受吗?我认为你应该能够做这样的事情:
DateTime dt = new DateTime(2018, 11, 20, 15, 30, 5, 0);
string x = (dt.ToString("ddd MMM dd HH:mm:ss X yyyy", CultureInfo.InvariantCulture));
string z = x.Replace("X", "myText");
Console.WriteLine(x);
Console.WriteLine(Environment.NewLine);
Console.WriteLine(z);
我们在 dt.ToString() 中放置了一个“X”,因为“X”不会被格式化,并且将作为我们的占位符在日期格式化后用我们想要的任何自定义文本替换值。
- 2 回答
- 0 关注
- 110 浏览
添加回答
举报