问题标签 [string.format]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 全球化自定义数字格式 - 可变小数点
我正在尝试更改我公司应用程序中现有的数字格式,以使其对国际用户更具可读性。这是一个股票交易应用程序,所以大多数股票价格的数字都精确到小数点后 2 位,比如 so-> 17.23 我们还可以得到精确到小数点后 4 位的刻度,所以一便士股票可能是 0.0341。我们用于股票的原始字符串格式是“#,##0.00##”,这将为我们提供我们想要的格式(基本上是修剪 '0')。这里的问题是“,”和“。” 强制用户使用,在许多其他国家/地区,千位分隔符是“。” 小数点是','。老板不想对所有数字都使用“N4”,即使这样可以解决全球化问题。
除了编写一些中间人代码来国际化以原始方式或其他 string.format 方法格式化的数字之外的其他选择?
c# - 如何从 string.Format 参数对象数组的字符串(类名)初始化对象?
我的想法是将带有string.Format()占位符 {0}...{n} 的文本存储在数据库中。占位符值类型以逗号分隔格式 (CSV) 存储在另一个名为“参数”的数据库字段中。
数据库中的文本示例:
发件人:{0}
地址:{1}收件人:{2}
地址:{3}
“参数”字段包含:
Company.FullName、Company.Address.FullAddress、Customer.FullName、Customer.Address.FullAddress
我希望“公司”、“客户”和“地址”代表类是显而易见的。FullName和FullAddress代表返回字符串的属性。“公司”和“客户”对象能够根据请求加载正确的地址。
我正在考虑使用带有string.Format()的“ params object[] params ”来传递值。
现在的问题是如何加载正确的对象并将匹配的参数计数传递给string.Format方法?
要求
- 数据库中的文本必须是可编辑的;
- 占位符计数可能会更改(添加或删除);
- 每个占位符在“ Parameters ”数据库字段中都有对应的参数;
- 每个参数代表一个类名及其属性。可以调用子类,但它们必须用点 (.) 分隔。示例:Company.Address.FullAddress;
- 仅应创建或加载特定于数据库中文本的所需对象。为了以防万一,加载一堆对象不是一个好主意;
- 如果只有一种方法可以处理该任务,那就太好了;
- 如果有任何合适的图案,请使用任何图案或图案。也许是Composite、Factory或Builder模式?
作为解决方案,我看到:
- 硬编码为每个数据库记录加载的对象。这要求不能更改带有占位符的文本。所以这个解决方案不适合我。
- 使用每个参数的反射加载对象。这将是一个很好的动态方法,但是如何使用客户地址信息加载正确的“地址”对象呢?Customer 对象由其CustomerId创建/加载。
到目前为止,我已经这么远了:
谢谢你能读到这么远。如果您对我有一些想法,那就更好了:)
PS。目前LoadTemplateContentFromDb和LoadTemplateParametersFromDb对数据库进行两次单独的调用,但我将对其进行重构,以便一次询问整个模板信息。
c# - 如何构造 WMI 查询
我想查找名称以 param1 开头并以 param2 结尾但我的代码不起作用的结果
怎么了?
为了比较
效果很好
.net - 在 .NET 中,String.Format 接受与格式字符串不匹配的类型的对象
我有一个函数正在传递一个字符串和一个数据行。
String 是一个自定义格式化程序。这个想法是这样做的
String.Format(passed_in_String, DataRow("ColumnINeed"))
这样做的原因是此时我们不知道该列包含什么。
但是,如果格式化程序是“{0:MM/dd/yyyy}”并且 DataRow("ColumnINeed") 是一个包含 42 的整数,则 String.Format 将返回:MM/dd/yyyy
在这种情况下,我需要它抛出异常而不是返回废话。
如果对象与格式字符串所期望的不匹配,是否有让 String.Format 抛出异常?
telerik - RadGrid(Telerik) Sum 的 String.Format 如何导致页脚?
我的 radgrid 列如下:
我如何 String.Format(reformat) Sum 导致此模板列的页脚?
意思是我想要像 {0:#,0 Dollar;#,0- Dollar} 这样的输出...
提前致谢
c# - TextBoxFor 上货币的 String.Format
我正试图@String.Format("{0:0.00}",Model.CurrentBalance)
进入这个@Html.TextBoxFor(model => model.CurrentBalance, new { @class = "required numeric", id = "CurrentBalance" })
我只是希望货币在我的文本框中显示为 .00,但没有运气。关于我如何做到这一点的任何想法?
c# - 带条件间距的 string.format 效率
格式化全名绝对最快的方法是什么?中间名和后缀可能为空或为空?
这样做的问题是,如果 MI 或后缀为空,那么我有两个空格。
我可以用这个进行第二次传递:
或者我可以用这样的东西制作字符串:
有更好的选择吗? 最快最重要。
c# - C# String.Format - 输入字符串无效
我有一个像这样的 MVC3 HtmlHelper 扩展:
的message
值为"The product "Product Name" was saved successfully."
的messageType
值为info
。
它一直在说Input string was not in the correct format.
我卡住了??
c# - 如何检测 String.Format() 中缺少的动态参数
这编译但在运行时失败。我知道为什么,别担心。任何人都知道一个宏或一个工具可以检查我的整个解决方案以找到这种情况的每一次出现......在编码时分心?仅检查表达式是否不是变量的简单方法就足够了。使用 FxCop 或 StyleCop 可能是可行的,但越简单越好 :-D
谢谢
c# - 单数/复数词的本地化 - 语法数字的不同语言规则是什么?
我一直在开发一个 .NET 字符串格式化库来协助应用程序的本地化。它被称为SmartFormat ,在GitHub 上是开源的。
它试图解决的问题之一是语法数字。这也被称为“单数和复数形式”或“条件格式”,下面是它的英文片段:
我相信你知道,英语规则是有两种形式(单数和复数)可以应用于名词、动词和形容词。如果数量是1
单数,则使用复数。
我现在正试图通过为其他语言实施正确的规则来“拓宽我的视野”!我已经了解到,某些语言最多可以有 4 种复数形式,并且需要一些逻辑来确定正确的形式。我想扩展我的代码以适应多种语言。例如,我听说俄语、波兰语和土耳其语的规则与英语大不相同,所以这可能是一个很好的起点。
但是,我只会说英语和西班牙语,那么如何确定许多常用语言的正确语法规则呢?
编辑:我也想在这里为我的单元测试了解一些好的非英语“测试短语”:哪些是可用于测试国际化和本地化库的具有单复数形式的好的非英语短语?