问题标签 [messageformat]
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.
java - 命名消息参数
在这样的情况下,我经常使用MessageFormat
索引参数:
现在我遇到了需要处理以下格式的消息的情况:
因此,值不再被索引,占位符是字符串。我该如何处理这种情况并具有与 with 相同的功能MessageFormat
?MessageFormat
如果参数没有被索引,则抛出解析异常。
谢谢你。
java - 验证 Java MessageFormat 字符串
我正在开发一个正在翻译的 Play 2 应用程序。PlayMessageFormat
在幕后使用 Java,所以我有相当多的属性值,ala:
my.interface.key={0,choice,0#{0} families|1#1 family|1<{0,number,integer} families}
我刚刚收到了以下形式的翻译:
my.interface.key={0,choix,0#{0} familles|1#1 famille|1<{0,nombre,entier} familles}
如果不是很明显,有些部分不应该翻译,但时常会发生错误。这很公平,但我确信在我的应用程序在运行时崩溃之前必须有一种方法来验证这些字符串并出现IllegalArgumentException: unknown format type at ...
异常。最好使用 Git 提交挂钩,甚至是 SBT 构建任务。
如果我要自己解决这个问题,我可能会制作一个工具来读取这些属性文件并检查每个值是否运行MessageFormat.format(value)
不会崩溃。
理想情况下,我可以通过 Perl(或 Python)脚本来做到这一点。可悲的是,我能找到的唯一非 Java 库 - CPAN 上的Text::MessageFormat - 似乎不支持最容易出错的格式,例如复数形式。
在我深入研究之前,任何人都可以根据现有工具提出更明智的方法吗?
ruby - 是否有与 Java MessageFormat 等效的 Ruby?
我有一个格式的字符串:
Hello {0}, today is {1} and the time is {2}. Will you be eating {3}?
给定一个数组["sir", "Monday", "12:00", "tacos"]
,这个字符串应该被格式化为:
Hello sir, today is Monday and the time is 12:00. Will you be eating tacos?
Ruby 是否有某种内置方法可以做到这一点?还是有宝石?还是我只需要更换字符串?
编辑:我想补充一点,我不允许编辑这些字符串。因此,类似 sprintf 的解决方案将不起作用。
scala - Scala:将字符串格式化为 PhoneNumber 并使用 Java 的 MessageFormat 的更好方法
我正在寻找一种更好的方法来更好地实现以下内容:
我已经导入 import java.text.MessageFormat 来设置我想要的格式。
- val szphoneFrmt 包含我想要的格式。
- val szInitialString 设置为我从数据库中提取的值。
- val szWorkString 通过子字符串分解字符串。
- val szWorkPhone 是带有格式化字符串的最后一个字符串。
现在我看到的问题是有时数据库中的值为空,因此 szInitialString 为空,所以我进行了检查以防止越界异常。现在这段代码正在工作,我可以正确格式化字符串,但我认为这不是一个好的解决方案。
有人对整理这段代码有什么建议吗?我完全可以放弃使用 Java 的 MessageFormat,但我还没有看到任何其他合理的解决方案。
java - 带有 MessageFormat 的“错误参数语法”
我得到了这个html
语法,它充满了 a 的帮助MessageFormat
:
如果我打电话:
我得到:
没有该style
部分一切正常。我keyword
在style
属性中使用了任何东西吗?
谢谢你的帮助。
斯特凡
javascript - 安装将 MessageFormat 添加到 Meteor 应用程序后调用方法“headersToken”时出错
安装 MessageFormat 后,meteor add gadicohen:messageformat
我在浏览器控制台中收到此错误:
终端中的完整错误日志:
我是 Meteor 的新手,到目前为止一切都很顺利,但是由于这个错误,我不知道如何继续。我更喜欢使用 MessageFormat 而不是其他一些 i18 包,因为 MessageFormat 附带的翻译 GUI。
任何提示将不胜感激。
万事如意,腾冲
java - 转义单引号的 MessageFormat.format 问题
我相信我发现了一个错误。不知道在哪里,并寻找有关修复它的最佳方法的建议。
这是创建 sql 视图脚本的代码:
你看我是如何用双勾转义单勾的,在我的理解中,'''' 应该变成 '' 结果字符串。
在 Android 模拟器中运行此代码,我得到以下字符串:
当我在实际设备上运行时,我得到以下信息:
看起来像某个地方的错误。脚本的第 3 行显示差异,'' vs '''
java - java.util.MessageFormat、java.util.Formatter与java.time.*/etc交互
我知道之前有人问过类似的问题,但不完全相同......本地化复合字符串的首选方法是什么?使用 java.util.Formatter 和快捷方式,还是使用 java.text.MessageFormat?我知道java教程推荐后者。但我不确定,尤其是 java.text.MessageFormat 似乎不支持新的 java.time api,这很不幸。
java - 解析非英文消息时MessageFormat解析错误
我的应用程序基于 XSD 文件验证 XML。此验证的结果是一条错误消息。为了向用户展示这一点,我使用 java.text.MessageFormat 解析此错误消息。问题是:当消息以英语出现时,我能够正常解析它,但是当消息以葡萄牙语(巴西)出现时,它返回以下错误:
这是我的代码:
}
我试图指定一个不同的位置来获取 de ResourceBundle 甚至实例化 MessageFormat,但它们都不起作用。
提前致谢。
吉尔赫姆
sockets - 应用层协议 - 不同大小的数据包
假设我在 TCP 之上为即时消息定义了自己的应用层协议。我为消息使用了数据包结构。当我使用对称 (AES) 和非对称 (RSA) 加密时,我会为不同的消息类型获得不同的数据包大小。现在回答我的问题。
如何从我收到单个应用层数据包的套接字中读取?我应该指定什么尺寸?
提前致谢。
我有两种方法。
从 TCP 流中读取代表实际数据包大小的固定数量的字节,最后从流中重新读取之前收集的字节大小。
从流中读取最大数据包大小。验证获得的字节的实际大小并确定它是哪种消息类型。
现在,一个更普遍的问题。我应该提供数据包大小、加密方法、接收方、发送方等元数据吗?如果是,我是否也应该加密这些元数据?