检查FormatString是否有效的简单方法

本文关键字:简单 方法 有效 FormatString 是否 检查 | 更新日期: 2023-09-27 18:12:57

是否有一种简单的方法来检查格式字符串是否有效?例如,下面的代码用于测试数字格式字符串;

public static bool IsValidFormatStringNumber(string FormatString)
{
    try
    {
        const decimal number = 0.056m;
        var formattedNumber = number.ToString(FormatString);
        return formattedNumber.Length > 0;
    }
    catch
    {
        return false;
    }
}

我们正在尝试捕获异常或确定结果字符串是否没有长度。然而,这个测试失败,因为格式字符串"hsibbur"(任何垃圾)导致字符串"hsaibbur",其长度为。

我们想对百分比和日期格式字符串做同样的测试。

检查FormatString是否有效的简单方法

如果您只是想检查标准格式字符串,只需检查您的格式字符串是该列表的一部分。

如果你想检查自定义格式字符串(不是"Other"或"Literal strings"),你可能可以制作一个正则表达式来做这件事。

除此之外,由于格式字符串可以是任意的字符串,我认为甚至验证也不适用

如果FormatString等于formattedNumber,则可能是另一种返回false的情况。