【问题标题】:Looking for a tool to quickly test C# format strings [closed]寻找一种工具来快速测试 C# 格式字符串 [关闭]
【发布时间】:2009-01-09 00:39:56
【问题描述】:

我经常忘记用于格式化 .NET 字符串的特殊小代码是什么。通过 ToString() 或使用 String.Format()。对齐方式、填充、月份与分钟(月份是大写 M?)、缩写与完整单词等。我永远记不得了。

我对正则表达式也有同样的问题,但幸运的是有 Expresso 来帮助我。太棒了。

是否有类似 Expresso 的工具可以在 DateTime 和 float 等标准类型上试验格式化字符串?

【问题讨论】:

标签: c# formatting string


【解决方案1】:

PowerShell 非常适合测试格式字符串。您可以从 PowerShell 加载程序集并使用要测试的对象和方法。您也可以在命令行上创建一个字符串并测试不同的格式选项。

您可以使用字符串类中的静态方法:

$teststring = 'Currency - {0:c}.  And a date - {1:ddd d MMM}.  And a plain string - {2}'
[string]::Format($teststring, 160.45, Get-Date, 'Test String')

或者 PowerShell 有一个内置的格式操作符

$teststring = 'Currency - {0:c}.  And a date - {1:ddd d MMM}.  And a plain string - {2}'
$teststring -f 160.45, Get-Date, 'Test String'

【讨论】:

  • 仅供参考,我正在使用“Get-Date”函数,当我将值强制放入变量中,然后在 -f 后使用该变量时,powershell 抱怨将函数放入其中很好
【解决方案2】:

我刚刚发现了这个:

http://rextester.com/

只需粘贴格式字符串,然后运行代码。

创建一个完全可以做到这一点的窗口或控制台项目也很简单。

【讨论】:

  • 这是最好的答案,它证明这个问题是完全有效的
【解决方案3】:

Snippet Compiler 通常是一个用于快速小型应用测试的好工具。不要用一百万个 ConsoleApplication79 项目弄乱你的 Visual Studio,只需使用它。我有它并且经常使用它。

【讨论】:

    【解决方案4】:

    LinqPad 是一个出色的工具,可以出色地处理此类事情,尽管它与其主要功能(排除 Linq 语法问题)无关。

    只需输入语言选择器设置为“C# 表达式”(或“VB.net 表达式”)且数据库设置为“无”的表达式。例如:

    String.Format("{0:d}-{1:d}", new DateTime(2012, 1, 6), null)
    

    当你按下运行时,你会得到结果:

    1/6/2012-
    

    【讨论】:

      【解决方案5】:

      【讨论】:

      • 非常接近,但缺少您在 ToString() 之外获得的对齐内容。我喜欢它是实时更新的。
      【解决方案6】:

      您可以使用 Reflector 的 Snippy 插件来运行小代码 sn-ps。

      看起来链接已失效 - 只需使用 LinqPad

      【讨论】:

        【解决方案7】:

        另一个简单的实用程序,在 MSDN 上可用:http://go.microsoft.com/fwlink/?LinkId=209564,描述是:

        使您能够将格式字符串应用于数字或日期和时间值并显示结果字符串的应用程序。

        但是需要自己编译。

        【讨论】:

          猜你喜欢
          • 2011-08-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-07-12
          • 1970-01-01
          • 2011-08-06
          • 2014-01-09
          • 2017-12-19
          相关资源
          最近更新 更多